clang API Documentation
Represents a type that was referred to using an elaborated type keyword, e.g., struct S, or via a qualified name, e.g., N::M::type, or both. More...
#include <Type.h>


Public Member Functions | |
| ~ElaboratedType () | |
| NestedNameSpecifier * | getQualifier () const |
| Retrieve the qualification on this type. | |
| QualType | getNamedType () const |
| Retrieve the type named by the qualified-id. | |
| QualType | desugar () const |
| Remove a single level of sugar. | |
| bool | isSugared () const |
| Returns whether this type directly provides sugar. | |
| void | Profile (llvm::FoldingSetNodeID &ID) |
Static Public Member Functions | |
| static void | Profile (llvm::FoldingSetNodeID &ID, ElaboratedTypeKeyword Keyword, NestedNameSpecifier *NNS, QualType NamedType) |
| static bool | classof (const Type *T) |
Friends | |
| class | ASTContext |
Represents a type that was referred to using an elaborated type keyword, e.g., struct S, or via a qualified name, e.g., N::M::type, or both.
This type is used to keep track of a type name as written in the source code, including tag keywords and any nested-name-specifiers. The type itself is always "sugar", used to express what was written in the source code but containing no additional semantic information.
| static bool clang::ElaboratedType::classof | ( | const Type * | T | ) | [inline, static] |
Reimplemented from clang::TypeWithKeyword.
Definition at line 4070 of file Type.h.
References clang::Type::getTypeClass().
| QualType clang::ElaboratedType::desugar | ( | ) | const [inline] |
| QualType clang::ElaboratedType::getNamedType | ( | ) | const [inline] |
Retrieve the type named by the qualified-id.
Definition at line 4051 of file Type.h.
Referenced by IsStructurallyEquivalent(), and clang::ASTNodeImporter::VisitElaboratedType().
| NestedNameSpecifier* clang::ElaboratedType::getQualifier | ( | ) | const [inline] |
Retrieve the qualification on this type.
Definition at line 4048 of file Type.h.
Referenced by IsStructurallyEquivalent(), and clang::ASTNodeImporter::VisitElaboratedType().
| bool clang::ElaboratedType::isSugared | ( | ) | const [inline] |
| void clang::ElaboratedType::Profile | ( | llvm::FoldingSetNodeID & | ID | ) | [inline] |
Definition at line 4059 of file Type.h.
Referenced by clang::ASTContext::getElaboratedType().
| static void clang::ElaboratedType::Profile | ( | llvm::FoldingSetNodeID & | ID, |
| ElaboratedTypeKeyword | Keyword, | ||
| NestedNameSpecifier * | NNS, | ||
| QualType | NamedType | ||
| ) | [inline, static] |
Definition at line 4063 of file Type.h.
References clang::QualType::Profile().
friend class ASTContext [friend] |
Reimplemented from clang::Type.