class SubstTemplateTemplateParmPackStorage
Declaration
class SubstTemplateTemplateParmPackStorage
: public UncommonTemplateNameStorage,
public Node { /* full declaration omitted */ };
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.
Declared at: clang/include/clang/AST/TemplateName.h:135
Inherits from: UncommonTemplateNameStorage, FoldingSetBase::Node
Member Variables
- private clang::TemplateTemplateParmDecl* Parameter
- private const clang::TemplateArgument* Arguments
Inherited from UncommonTemplateNameStorage:
Method Overview
- public void Profile(llvm::FoldingSetNodeID & ID, clang::ASTContext & Context)
- public static void Profile(llvm::FoldingSetNodeID & ID, clang::ASTContext & Context, clang::TemplateTemplateParmDecl * Parameter, const clang::TemplateArgument & ArgPack)
- public SubstTemplateTemplateParmPackStorage(clang::TemplateTemplateParmDecl * Parameter, unsigned int Size, const clang::TemplateArgument * Arguments)
- public clang::TemplateArgument getArgumentPack() const
- public clang::TemplateTemplateParmDecl * getParameterPack() const
Inherited from FoldingSetBase::Node:
Inherited from UncommonTemplateNameStorage:
- public getAsAssumedTemplateName
- public getAsOverloadedStorage
- public getAsSubstTemplateTemplateParm
- public getAsSubstTemplateTemplateParmPack
- public size
Methods
¶void Profile(llvm::FoldingSetNodeID& ID,
clang::ASTContext& Context)
void Profile(llvm::FoldingSetNodeID& ID,
clang::ASTContext& Context)
Declared at: clang/include/clang/AST/TemplateName.h:157
Parameters
- llvm::FoldingSetNodeID& ID
- clang::ASTContext& Context
¶static void Profile(
llvm::FoldingSetNodeID& ID,
clang::ASTContext& Context,
clang::TemplateTemplateParmDecl* Parameter,
const clang::TemplateArgument& ArgPack)
static void Profile(
llvm::FoldingSetNodeID& ID,
clang::ASTContext& Context,
clang::TemplateTemplateParmDecl* Parameter,
const clang::TemplateArgument& ArgPack)
Declared at: clang/include/clang/AST/TemplateName.h:159
Parameters
- llvm::FoldingSetNodeID& ID
- clang::ASTContext& Context
- clang::TemplateTemplateParmDecl* Parameter
- const clang::TemplateArgument& ArgPack
¶SubstTemplateTemplateParmPackStorage(
clang::TemplateTemplateParmDecl* Parameter,
unsigned int Size,
const clang::TemplateArgument* Arguments)
SubstTemplateTemplateParmPackStorage(
clang::TemplateTemplateParmDecl* Parameter,
unsigned int Size,
const clang::TemplateArgument* Arguments)
Declared at: clang/include/clang/AST/TemplateName.h:142
Parameters
- clang::TemplateTemplateParmDecl* Parameter
- unsigned int Size
- const clang::TemplateArgument* Arguments
¶clang::TemplateArgument getArgumentPack() const
clang::TemplateArgument getArgumentPack() const
Description
Retrieve the template template argument pack with which this parameter was substituted.
Declared at: clang/include/clang/AST/TemplateName.h:155
¶clang::TemplateTemplateParmDecl*
getParameterPack() const
clang::TemplateTemplateParmDecl*
getParameterPack() const
Description
Retrieve the template template parameter pack being substituted.
Declared at: clang/include/clang/AST/TemplateName.h:149