Package org.eclipse.cdt.core.dom.ast.cpp
Interface ICPPASTTemplateId
-
- All Superinterfaces:
IASTName
,IASTNameOwner
,IASTNode
,ICPPASTName
,ICPPASTNameSpecifier
,IName
public interface ICPPASTTemplateId extends ICPPASTName, IASTNameOwner
- 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
Fields Modifier and Type Field Description static IASTNode[]
EMPTY_ARG_ARRAY
Deprecated.Use IASTNode.EMPTY_NODE_ARRAY instead.static ASTNodeProperty
TEMPLATE_ID_ARGUMENT
TEMPLATE_ID_ARGUMENT = template id argument.static ASTNodeProperty
TEMPLATE_NAME
The template name in the template ID.-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTName
EMPTY_NAME_ARRAY
-
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.ICPPASTNameSpecifier
EMPTY_NAME_SPECIFIER_ARRAY
-
Fields inherited from interface org.eclipse.cdt.core.dom.IName
EMPTY_ARRAY
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addTemplateArgument(ICPPASTAmbiguousTemplateArgument ambiguity)
Adds an ambiguity node for later resolution.void
addTemplateArgument(IASTExpression expression)
Adds a template argument.void
addTemplateArgument(IASTTypeId typeId)
Adds template argument.ICPPASTTemplateId
copy()
Returns a mutable copy of the tree rooted at this node.ICPPASTTemplateId
copy(IASTNode.CopyStyle style)
Returns a mutable copy of the tree rooted at this node.IASTNode[]
getTemplateArguments()
Returns all template arguments as nodes.IASTName
getTemplateName()
Returns the name of the template.void
setTemplateName(IASTName name)
Sets the name of the template.-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTName
getBinding, getCompletionContext, getImageLocation, getLastName, getLinkage, getLookupKey, getPreBinding, getRoleOfName, isQualified, resolveBinding, resolvePreBinding, setBinding, toCharArray, toString
-
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.ICPPASTNameSpecifier
resolveBinding, resolvePreBinding, toCharArray
-
Methods inherited from interface org.eclipse.cdt.core.dom.IName
getFileLocation, getSimpleID, isDeclaration, isDefinition, isReference
-
-
-
-
Field Detail
-
TEMPLATE_NAME
static final ASTNodeProperty TEMPLATE_NAME
The template name in the template ID.
-
TEMPLATE_ID_ARGUMENT
static final ASTNodeProperty TEMPLATE_ID_ARGUMENT
TEMPLATE_ID_ARGUMENT = template id argument.
-
EMPTY_ARG_ARRAY
@Deprecated static final IASTNode[] EMPTY_ARG_ARRAY
Deprecated.Use IASTNode.EMPTY_NODE_ARRAY instead.- Restriction:
- This field is not intended to be referenced by clients.
-
-
Method Detail
-
getTemplateName
IASTName getTemplateName()
Returns the name of the template.- Returns:
IASTName
-
setTemplateName
void setTemplateName(IASTName name)
Sets the name of the template.- Parameters:
name
-IASTName
-
addTemplateArgument
void addTemplateArgument(IASTTypeId typeId)
Adds template argument.- Parameters:
typeId
-IASTTypeId
-
addTemplateArgument
void addTemplateArgument(IASTExpression expression)
Adds a template argument.- Parameters:
expression
-IASTExpression
-
addTemplateArgument
void addTemplateArgument(ICPPASTAmbiguousTemplateArgument ambiguity)
Adds an ambiguity node for later resolution.- Parameters:
ambiguity
-
-
getTemplateArguments
IASTNode[] getTemplateArguments()
Returns all template arguments as nodes.- Returns:
- nodes representing the template arguments
-
copy
ICPPASTTemplateId 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 interfaceIASTName
- Specified by:
copy
in interfaceIASTNode
- Specified by:
copy
in interfaceICPPASTName
- Specified by:
copy
in interfaceICPPASTNameSpecifier
- Since:
- 5.1
-
copy
ICPPASTTemplateId copy(IASTNode.CopyStyle style)
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 interfaceIASTName
- Specified by:
copy
in interfaceIASTNode
- Specified by:
copy
in interfaceICPPASTName
- Specified by:
copy
in interfaceICPPASTNameSpecifier
- Parameters:
style
-IASTNode.CopyStyle
create a copy with or without locations. Please seeIASTNode.CopyStyle
for restrictions on copies with Locations.- Since:
- 5.3
-
-