mrdocs::SymbolCommonBase

Base class for providing variant discriminator functions.

Synopsis

Declared in <mrdocs/Metadata/Symbol/SymbolBase.hpp>

template<SymbolKind K>
struct SymbolCommonBase
    : Symbol

Base Classes

Name

Description

Symbol

Base class with common properties of all symbols

Member Functions

Name

Description

asInfo

operator<=>

Three‐way comparison operators

Data Members

Name

Description

Access

Declaration access.

Extraction

Determine why a symbol is extracted.

Kind

Kind of declaration.

Loc

The source location information.

Name

The unqualified name.

Parent

The parent symbol, if any.

doc

The extracted documentation for this declaration.

id

The unique identifier for this symbol.

Static Data Members

Name

Description

kind_id

The variant discriminator constant of the most‐derived class.

Protected Member Functions

Name

Description

SymbolCommonBase [constructor]

Constructors

Non-Member Functions

Name

Description

merge

Merges two Symbol objects.

Derived Classes

Name

Description

ConceptSymbol

Info for concepts.

EnumConstantSymbol

Info for enum constants.

EnumSymbol

FunctionSymbol

GuideSymbol

Info for deduction guides.

NamespaceAliasSymbol

Info for namespace aliases.

NamespaceSymbol

Describes a namespace.

OverloadsSymbol

Represents a set of function overloads.

RecordSymbol

Metadata for struct, class, or union.

TypedefSymbol

UsingSymbol

Info for using declarations.

VariableSymbol

A variable.

Description

This offers functions that return a boolean at compile‐time, indicating if the most‐derived class is a certain type.

Created with MrDocs