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
SymbolBase 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
mergeMerges 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