clang API Documentation
Declaration of an alias template. More...
#include <DeclTemplate.h>
Public Member Functions | |
TypeAliasDecl * | getTemplatedDecl () const |
Get the underlying function declaration of the template. | |
TypeAliasTemplateDecl * | getCanonicalDecl () override |
Retrieves the canonical declaration of this template. | |
const TypeAliasTemplateDecl * | getCanonicalDecl () const |
TypeAliasTemplateDecl * | getPreviousDecl () |
Retrieve the previous declaration of this function template, or NULL if no such declaration exists. | |
const TypeAliasTemplateDecl * | getPreviousDecl () const |
Retrieve the previous declaration of this function template, or NULL if no such declaration exists. | |
TypeAliasTemplateDecl * | getInstantiatedFromMemberTemplate () |
Static Public Member Functions | |
static TypeAliasTemplateDecl * | Create (ASTContext &C, DeclContext *DC, SourceLocation L, DeclarationName Name, TemplateParameterList *Params, NamedDecl *Decl) |
Create a function template node. | |
static TypeAliasTemplateDecl * | CreateDeserialized (ASTContext &C, unsigned ID) |
Create an empty alias template node. | |
static bool | classof (const Decl *D) |
static bool | classofKind (Kind K) |
Protected Types | |
typedef CommonBase | Common |
Pointer to the common data shared by all declarations of this template. | |
Protected Member Functions | |
TypeAliasTemplateDecl (ASTContext &C, DeclContext *DC, SourceLocation L, DeclarationName Name, TemplateParameterList *Params, NamedDecl *Decl) | |
CommonBase * | newCommon (ASTContext &C) const override |
Common * | getCommonPtr () |
Friends | |
class | ASTDeclReader |
class | ASTDeclWriter |
Declaration of an alias template.
For example:
template \<typename T> using V = std::map<T*, int, MyCompare<T>>;
Definition at line 2098 of file DeclTemplate.h.
typedef CommonBase clang::TypeAliasTemplateDecl::Common [protected] |
Pointer to the common data shared by all declarations of this template.
Reimplemented from clang::RedeclarableTemplateDecl.
Definition at line 2102 of file DeclTemplate.h.
clang::TypeAliasTemplateDecl::TypeAliasTemplateDecl | ( | ASTContext & | C, |
DeclContext * | DC, | ||
SourceLocation | L, | ||
DeclarationName | Name, | ||
TemplateParameterList * | Params, | ||
NamedDecl * | Decl | ||
) | [inline, protected] |
Definition at line 2104 of file DeclTemplate.h.
Referenced by Create(), and CreateDeserialized().
static bool clang::TypeAliasTemplateDecl::classof | ( | const Decl * | D | ) | [inline, static] |
Reimplemented from clang::RedeclarableTemplateDecl.
Definition at line 2164 of file DeclTemplate.h.
References classofKind(), and clang::Decl::getKind().
static bool clang::TypeAliasTemplateDecl::classofKind | ( | Kind | K | ) | [inline, static] |
Reimplemented from clang::RedeclarableTemplateDecl.
Definition at line 2165 of file DeclTemplate.h.
Referenced by classof().
TypeAliasTemplateDecl * TypeAliasTemplateDecl::Create | ( | ASTContext & | C, |
DeclContext * | DC, | ||
SourceLocation | L, | ||
DeclarationName | Name, | ||
TemplateParameterList * | Params, | ||
NamedDecl * | Decl | ||
) | [static] |
Create a function template node.
Definition at line 883 of file DeclTemplate.cpp.
References AdoptTemplateParameterList(), AttributeLangSupport::C, and TypeAliasTemplateDecl().
Referenced by clang::Sema::ActOnAliasDeclaration().
TypeAliasTemplateDecl * TypeAliasTemplateDecl::CreateDeserialized | ( | ASTContext & | C, |
unsigned | ID | ||
) | [static] |
Create an empty alias template node.
Definition at line 893 of file DeclTemplate.cpp.
References AttributeLangSupport::C, and TypeAliasTemplateDecl().
TypeAliasTemplateDecl* clang::TypeAliasTemplateDecl::getCanonicalDecl | ( | ) | [inline, override, virtual] |
Retrieves the canonical declaration of this template.
Reimplemented from clang::RedeclarableTemplateDecl.
Definition at line 2123 of file DeclTemplate.h.
Referenced by getCanonicalDecl().
const TypeAliasTemplateDecl* clang::TypeAliasTemplateDecl::getCanonicalDecl | ( | ) | const [inline] |
Reimplemented from clang::RedeclarableTemplateDecl.
Definition at line 2127 of file DeclTemplate.h.
References getCanonicalDecl().
Common* clang::TypeAliasTemplateDecl::getCommonPtr | ( | ) | [inline, protected] |
Definition at line 2112 of file DeclTemplate.h.
Definition at line 2147 of file DeclTemplate.h.
Retrieve the previous declaration of this function template, or NULL if no such declaration exists.
Reimplemented from clang::Redeclarable< RedeclarableTemplateDecl >.
Definition at line 2134 of file DeclTemplate.h.
Referenced by getPreviousDecl().
const TypeAliasTemplateDecl* clang::TypeAliasTemplateDecl::getPreviousDecl | ( | ) | const [inline] |
Retrieve the previous declaration of this function template, or NULL if no such declaration exists.
Reimplemented from clang::Redeclarable< RedeclarableTemplateDecl >.
Definition at line 2141 of file DeclTemplate.h.
References getPreviousDecl().
TypeAliasDecl* clang::TypeAliasTemplateDecl::getTemplatedDecl | ( | ) | const [inline] |
Get the underlying function declaration of the template.
Reimplemented from clang::TemplateDecl.
Definition at line 2118 of file DeclTemplate.h.
References clang::TemplateDecl::TemplatedDecl.
Referenced by clang::Sema::ActOnAliasDeclaration().
RedeclarableTemplateDecl::CommonBase * TypeAliasTemplateDecl::newCommon | ( | ASTContext & | C | ) | const [override, protected, virtual] |
Implements clang::RedeclarableTemplateDecl.
Definition at line 903 of file DeclTemplate.cpp.
References clang::ASTContext::AddDeallocation(), and AttributeLangSupport::C.
friend class ASTDeclReader [friend] |
Reimplemented from clang::RedeclarableTemplateDecl.
Definition at line 2167 of file DeclTemplate.h.
friend class ASTDeclWriter [friend] |
Reimplemented from clang::RedeclarableTemplateDecl.
Definition at line 2168 of file DeclTemplate.h.