clang 22.0.0git
|
Provides a few static helpers for converting and printing elaborated type keyword and tag type kind enumerations. More...
#include "clang/AST/TypeBase.h"
Static Public Member Functions | |
static ElaboratedTypeKeyword | getKeywordForTypeSpec (unsigned TypeSpec) |
Converts a type specifier (DeclSpec::TST) into an elaborated type keyword. | |
static TagTypeKind | getTagTypeKindForTypeSpec (unsigned TypeSpec) |
Converts a type specifier (DeclSpec::TST) into a tag type kind. | |
static ElaboratedTypeKeyword | getKeywordForTagTypeKind (TagTypeKind Tag) |
Converts a TagTypeKind into an elaborated type keyword. | |
static TagTypeKind | getTagTypeKindForKeyword (ElaboratedTypeKeyword Keyword) |
Converts an elaborated type keyword into a TagTypeKind. | |
static bool | KeywordIsTagTypeKind (ElaboratedTypeKeyword Keyword) |
static StringRef | getKeywordName (ElaboratedTypeKeyword Keyword) |
static StringRef | getTagTypeKindName (TagTypeKind Kind) |
Provides a few static helpers for converting and printing elaborated type keyword and tag type kind enumerations.
Definition at line 5925 of file TypeBase.h.
|
static |
Converts a TagTypeKind into an elaborated type keyword.
Definition at line 3264 of file Type.cpp.
References clang::Class, clang::Enum, clang::Interface, clang::Struct, and clang::Union.
Referenced by clang::Sema::ActOnDependentTag(), clang::Sema::ActOnTagTemplateIdType(), clang::Sema::ActOnTemplatedFriendTag(), and clang::ASTContext::getTagType().
|
static |
Converts a type specifier (DeclSpec::TST) into an elaborated type keyword.
Definition at line 3227 of file Type.cpp.
References clang::Class, clang::Enum, clang::Interface, clang::None, clang::Struct, clang::TST_class, clang::TST_enum, clang::TST_interface, clang::TST_struct, clang::TST_typename, clang::TST_union, clang::Typename, and clang::Union.
Referenced by ConvertDeclSpecToType().
|
static |
Definition at line 3315 of file Type.cpp.
References clang::Class, clang::Enum, clang::Interface, clang::Keyword, clang::None, clang::Struct, clang::Typename, and clang::Union.
Referenced by clang::TextNodeDumper::VisitTagType(), clang::TextNodeDumper::VisitTemplateSpecializationType(), clang::TextNodeDumper::VisitTypedefType(), clang::TextNodeDumper::VisitUnresolvedUsingType(), and clang::TextNodeDumper::VisitUsingType().
|
static |
Converts an elaborated type keyword into a TagTypeKind.
It is an error to provide an elaborated type keyword which isn't a tag kind here.
Definition at line 3281 of file Type.cpp.
References clang::Class, clang::Enum, clang::Interface, clang::Keyword, clang::None, clang::Struct, clang::Typename, and clang::Union.
Referenced by clang::Sema::CheckTemplateIdType(), and clang::TreeTransform< Derived >::RebuildDependentNameType().
|
static |
Converts a type specifier (DeclSpec::TST) into a tag type kind.
It is an error to provide a type specifier which isn't a tag kind here.
Definition at line 3246 of file Type.cpp.
References clang::Class, clang::Enum, clang::Interface, clang::Struct, clang::TST_class, clang::TST_enum, clang::TST_interface, clang::TST_struct, clang::TST_union, and clang::Union.
Referenced by clang::Sema::ActOnClassTemplateSpecialization(), clang::Sema::ActOnDependentTag(), clang::Sema::ActOnExplicitInstantiation(), clang::Sema::ActOnTag(), clang::Sema::ActOnTagTemplateIdType(), clang::Sema::ActOnTemplatedFriendTag(), and clang::Sema::CheckClassTemplate().
|
inlinestatic |
Definition at line 5945 of file TypeBase.h.
References Kind.
Referenced by clang::Sema::ActOnTag(), clang::Sema::ActOnTemplatedFriendTag(), clang::TagDecl::getKindName(), and clang::Sema::isAcceptableTagRedeclaration().
|
static |
Definition at line 3300 of file Type.cpp.
References clang::Class, clang::Enum, clang::Interface, clang::Keyword, clang::None, clang::Struct, clang::Typename, and clang::Union.
Referenced by clang::Type::isElaboratedTypeSpecifier().