Package org.eclipse.cdt.core.dom.ast.cpp
Interface ICPPASTTemplatedTypeTemplateParameter
- All Superinterfaces:
IASTNameOwner
,IASTNode
,ICPPASTTemplateParameter
public interface ICPPASTTemplatedTypeTemplateParameter
extends ICPPASTTemplateParameter, IASTNameOwner
This is a template template parameter as
V
in
template<template<typename T> class V> class CT;
- Restriction:
- This interface is not intended to be implemented by clients.
- Restriction:
- This interface is not intended to be extended by clients.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
IASTNode.CopyStyle
-
Field Summary
Modifier and TypeFieldDescriptionstatic final ASTNodeProperty
Relation between template template parameter and its default value.static final ASTNodeProperty
Relation between template template parameter and its (nested) template parameters.static final ASTNodeProperty
Relation between template template parameter and its name.static final int
tt_class
represents a class.static final int
tt_typename
represents a typename.Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNameOwner
r_declaration, r_definition, r_reference, r_unclear
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
EMPTY_NODE_ARRAY
Fields inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPASTTemplateParameter
EMPTY_TEMPLATEPARAMETER_ARRAY
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Add a nested template parameter.void
Deprecated.asScope()
Returns the scope that contains the template parameters of this template-template parameter.copy()
Returns a mutable copy of the tree rooted at this node.copy
(IASTNode.CopyStyle style) Returns a mutable copy of the tree rooted at this node.Get default value for template template parameter ornull
.getName()
Get the (optional) name of this template template parameter.int
Get the type of the template-template parameter (eithertt_class
ortt_typename
).Get the nested template parameters.void
setDefaultValue
(IASTExpression expression) Set default value for the template template parameter.void
setIsParameterPack
(boolean val) Set whether this template template parameter is a parameter pack.void
Set the name of this template template parameter.void
setParameterType
(int type) Set the type of the template-template parameter.Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTNameOwner
getRoleForName
Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
accept, contains, getChildren, getContainingFilename, getFileLocation, getLeadingSyntax, getNodeLocations, getOriginalNode, getParent, getPropertyInParent, getRawSignature, getSyntax, getTrailingSyntax, getTranslationUnit, isActive, isFrozen, isPartOfTranslationUnitFile, setParent, setPropertyInParent
Methods inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPASTTemplateParameter
isParameterPack
-
Field Details
-
PARAMETER
Relation between template template parameter and its (nested) template parameters. -
PARAMETER_NAME
Relation between template template parameter and its name. -
DEFAULT_VALUE
Relation between template template parameter and its default value. -
tt_class
static final int tt_classtt_class
represents a class.- Since:
- 6.6
- See Also:
-
tt_typename
static final int tt_typenamett_typename
represents a typename.- Since:
- 6.6
- See Also:
-
-
Method Details
-
getTemplateParameters
ICPPASTTemplateParameter[] getTemplateParameters()Get the nested template parameters. -
getParameterType
int getParameterType()Get the type of the template-template parameter (eithertt_class
ortt_typename
).- Since:
- 6.6
-
getName
IASTName getName()Get the (optional) name of this template template parameter. In case there is no name an empty name is returned. -
getDefaultValue
IASTExpression getDefaultValue()Get default value for template template parameter ornull
. -
copy
Description copied from interface:IASTNode
Returns a mutable copy of the tree rooted at this node. The following postconditions hold:copy.getParent() == null copy.getPropertyInParent() == null copy.isFrozen() == false
Preprocessor nodes do not currently support being copied. Implicit name nodes are not copied, instead they can be regenerated if required.Calling this method is equivalent to
copy(CopyStyle.withoutLocations)
.- Specified by:
copy
in interfaceIASTNode
- Specified by:
copy
in interfaceICPPASTTemplateParameter
- Since:
- 5.1
-
copy
Description copied from interface:IASTNode
Returns a mutable copy of the tree rooted at this node. The following postconditions hold:copy.getParent() == null copy.getPropertyInParent() == null copy.isFrozen() == false
Preprocessor nodes do not currently support being copied. Implicit name nodes are not copied, instead they can be regenerated if required.- Specified by:
copy
in interfaceIASTNode
- Specified by:
copy
in interfaceICPPASTTemplateParameter
- Parameters:
style
-IASTNode.CopyStyle
create a copy with or without locations. Please seeIASTNode.CopyStyle
for restrictions on copies with Locations.- Since:
- 5.3
-
addTemplateParameter
Add a nested template parameter.- Since:
- 5.3
-
setIsParameterPack
void setIsParameterPack(boolean val) Set whether this template template parameter is a parameter pack.- Since:
- 5.2
-
setParameterType
void setParameterType(int type) Set the type of the template-template parameter.- Parameters:
type
- The type of the template-template parameter (eithertt_class
ortt_typename
)- Since:
- 6.6
-
setName
Set the name of this template template parameter. -
setDefaultValue
Set default value for the template template parameter. -
asScope
ICPPScope asScope()Returns the scope that contains the template parameters of this template-template parameter.- Since:
- 5.4
-
addTemplateParamter
Deprecated.- Restriction:
- This method is not intended to be referenced by clients.
-
addTemplateParameter(ICPPASTTemplateParameter)