clang
3.9.0
|
Represents a template name that was expressed as a qualified name. More...
#include <TemplateName.h>
Public Member Functions | |
NestedNameSpecifier * | getQualifier () const |
Return the nested name specifier that qualifies this name. More... | |
bool | hasTemplateKeyword () const |
Whether the template name was prefixed by the "template" keyword. More... | |
TemplateDecl * | getDecl () const |
The template declaration that this qualified name refers to. More... | |
TemplateDecl * | getTemplateDecl () const |
The template declaration to which this qualified name refers. More... | |
void | Profile (llvm::FoldingSetNodeID &ID) |
Static Public Member Functions | |
static void | Profile (llvm::FoldingSetNodeID &ID, NestedNameSpecifier *NNS, bool TemplateKeyword, TemplateDecl *Template) |
Friends | |
class | ASTContext |
Represents a template name that was expressed as a qualified name.
This kind of template name refers to a template name that was preceded by a nested name specifier, e.g., std::vector
. Here, the nested name specifier is "std::" and the template name is the declaration for "vector". The QualifiedTemplateName class is only used to provide "sugar" for template names that were expressed with a qualified name, and has no semantic meaning. In this manner, it is to TemplateName what ElaboratedType is to Type, providing extra syntactic sugar for downstream clients.
Definition at line 355 of file TemplateName.h.
|
inline |
The template declaration that this qualified name refers to.
Definition at line 386 of file TemplateName.h.
|
inline |
Return the nested name specifier that qualifies this name.
Definition at line 378 of file TemplateName.h.
Referenced by clang::ASTRecordWriter::AddTemplateName(), clang::TypeName::getFullyQualifiedTemplateName(), clang::ASTImporter::Import(), and Profile().
|
inline |
The template declaration to which this qualified name refers.
Definition at line 390 of file TemplateName.h.
Referenced by clang::ASTRecordWriter::AddTemplateName(), and Profile().
|
inline |
Whether the template name was prefixed by the "template" keyword.
Definition at line 382 of file TemplateName.h.
Referenced by clang::ASTRecordWriter::AddTemplateName(), clang::TypeName::getFullyQualifiedTemplateName(), clang::ASTImporter::Import(), and Profile().
|
inline |
Definition at line 392 of file TemplateName.h.
References getQualifier(), getTemplateDecl(), and hasTemplateKeyword().
Referenced by clang::ASTContext::getQualifiedTemplateName().
|
inlinestatic |
Definition at line 396 of file TemplateName.h.
|
friend |
Definition at line 369 of file TemplateName.h.