clang
3.7.0
|
A structure for storing an already-substituted template template parameter pack. More...
#include <TemplateName.h>
Public Member Functions | |
SubstTemplateTemplateParmPackStorage (TemplateTemplateParmDecl *Parameter, unsigned Size, const TemplateArgument *Arguments) | |
TemplateTemplateParmDecl * | getParameterPack () const |
Retrieve the template template parameter pack being substituted. More... | |
TemplateArgument | getArgumentPack () const |
Retrieve the template template argument pack with which this parameter was substituted. More... | |
void | Profile (llvm::FoldingSetNodeID &ID, ASTContext &Context) |
![]() | |
unsigned | size () const |
OverloadedTemplateStorage * | getAsOverloadedStorage () |
SubstTemplateTemplateParmStorage * | getAsSubstTemplateTemplateParm () |
SubstTemplateTemplateParmPackStorage * | getAsSubstTemplateTemplateParmPack () |
Static Public Member Functions | |
static void | Profile (llvm::FoldingSetNodeID &ID, ASTContext &Context, TemplateTemplateParmDecl *Parameter, const TemplateArgument &ArgPack) |
Additional Inherited Members | |
![]() | |
enum | Kind { Overloaded, SubstTemplateTemplateParm, SubstTemplateTemplateParmPack } |
![]() | |
UncommonTemplateNameStorage (Kind kind, unsigned size) | |
![]() | |
union { | |
struct BitsTag Bits | |
void * PointerAlignment | |
}; | |
A structure for storing an already-substituted template template parameter pack.
This kind of template names occurs when the parameter pack has been provided with a template template argument pack in a context where its enclosing pack expansion could not be fully expanded.
Definition at line 118 of file TemplateName.h.
|
inline |
Definition at line 125 of file TemplateName.h.
TemplateArgument SubstTemplateTemplateParmPackStorage::getArgumentPack | ( | ) | const |
Retrieve the template template argument pack with which this parameter was substituted.
Definition at line 26 of file TemplateName.cpp.
Referenced by clang::ASTWriter::AddTemplateName(), clang::ASTContext::getCanonicalTemplateName(), and clang::ASTImporter::Import().
|
inline |
Retrieve the template template parameter pack being substituted.
Definition at line 132 of file TemplateName.h.
Referenced by clang::ASTWriter::AddTemplateName(), clang::ASTContext::getCanonicalTemplateName(), clang::ASTContext::getNameForTemplate(), and clang::ASTImporter::Import().
void SubstTemplateTemplateParmPackStorage::Profile | ( | llvm::FoldingSetNodeID & | ID, |
ASTContext & | Context | ||
) |
Definition at line 41 of file TemplateName.cpp.
References clang::Parameter.
Referenced by clang::ASTContext::getSubstTemplateTemplateParmPack().
|
static |
Definition at line 46 of file TemplateName.cpp.
References clang::TemplateArgument::Profile().