Package org.eclipse.cdt.core.dom.ast.cpp
Interface ICPPTemplateInstance
-
- All Superinterfaces:
org.eclipse.core.runtime.IAdaptable
,IBinding
,ICPPBinding
,ICPPSpecialization
- All Known Subinterfaces:
ICPPAliasTemplateInstance
,ICPPDeferredTemplateInstance
,ICPPFunctionInstance
,ICPPVariableInstance
public interface ICPPTemplateInstance extends ICPPSpecialization
This interface represents an instantiation or an explicit specialization of a class or a function template. TheisExplicitSpecialization()
method is used to distinguish between the two cases. An instance of a class template will also implement ICPPClassType and similarly a function template instance will also implement ICPPFunction (or even ICPPMethod or ICPPConstructor as appropriate).- Restriction:
- This interface is not intended to be implemented by clients.
- Restriction:
- This interface is not intended to be extended by clients.
-
-
Field Summary
Fields Modifier and Type Field Description static ICPPTemplateInstance[]
EMPTY_TEMPLATE_INSTANCE_ARRAY
-
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IBinding
EMPTY_BINDING_ARRAY
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ICPPTemplateArgument[]
getTemplateArguments()
Returns the template arguments of this instance.ICPPTemplateDefinition
getTemplateDefinition()
Returns the template that this instance was instantiated from.boolean
isExplicitSpecialization()
Explicit specializations are modeled as instances of a template.-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.IBinding
getLinkage, getName, getNameCharArray, getOwner, getScope
-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPBinding
getQualifiedName, getQualifiedNameCharArray, isGloballyQualified
-
Methods inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPSpecialization
getSpecializedBinding, getTemplateParameterMap
-
-
-
-
Field Detail
-
EMPTY_TEMPLATE_INSTANCE_ARRAY
static final ICPPTemplateInstance[] EMPTY_TEMPLATE_INSTANCE_ARRAY
- Since:
- 5.1
-
-
Method Detail
-
getTemplateDefinition
ICPPTemplateDefinition getTemplateDefinition()
Returns the template that this instance was instantiated from.
-
getTemplateArguments
ICPPTemplateArgument[] getTemplateArguments()
Returns the template arguments of this instance.- Since:
- 5.1
-
isExplicitSpecialization
boolean isExplicitSpecialization()
Explicit specializations are modeled as instances of a template. Returnstrue
if this binding is an explicit specialization.- Since:
- 5.2
-
-