clang API Documentation

Public Member Functions | Static Public Member Functions
clang::SubstTemplateTemplateParmPackStorage Class Reference

A structure for storing an already-substituted template template parameter pack. More...

#include <TemplateName.h>

Inheritance diagram for clang::SubstTemplateTemplateParmPackStorage:
Inheritance graph
[legend]
Collaboration diagram for clang::SubstTemplateTemplateParmPackStorage:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 SubstTemplateTemplateParmPackStorage (TemplateTemplateParmDecl *Parameter, unsigned Size, const TemplateArgument *Arguments)
TemplateTemplateParmDeclgetParameterPack () const
 Retrieve the template template parameter pack being substituted.
TemplateArgument getArgumentPack () const
 Retrieve the template template argument pack with which this parameter was substituted.
void Profile (llvm::FoldingSetNodeID &ID, ASTContext &Context)

Static Public Member Functions

static void Profile (llvm::FoldingSetNodeID &ID, ASTContext &Context, TemplateTemplateParmDecl *Parameter, const TemplateArgument &ArgPack)

Detailed Description

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 117 of file TemplateName.h.


Constructor & Destructor Documentation

clang::SubstTemplateTemplateParmPackStorage::SubstTemplateTemplateParmPackStorage ( TemplateTemplateParmDecl Parameter,
unsigned  Size,
const TemplateArgument Arguments 
) [inline]

Definition at line 124 of file TemplateName.h.


Member Function Documentation

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().

TemplateTemplateParmDecl* clang::SubstTemplateTemplateParmPackStorage::getParameterPack ( ) const [inline]

Retrieve the template template parameter pack being substituted.

Definition at line 131 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 
)
void SubstTemplateTemplateParmPackStorage::Profile ( llvm::FoldingSetNodeID &  ID,
ASTContext Context,
TemplateTemplateParmDecl Parameter,
const TemplateArgument ArgPack 
) [static]

Definition at line 46 of file TemplateName.cpp.

References clang::TemplateArgument::Profile().


The documentation for this class was generated from the following files: