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
This interface represents an instantiation or an explicit specialization of a class or a function template.
The
isExplicitSpecialization() 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
FieldsFields inherited from interface org.eclipse.cdt.core.dom.ast.IBinding
EMPTY_BINDING_ARRAY -
Method Summary
Modifier and TypeMethodDescriptionReturns the template arguments of this instance.Returns the template that this instance was instantiated from.booleanExplicit specializations are modeled as instances of a template.Methods inherited from interface org.eclipse.core.runtime.IAdaptable
getAdapterMethods inherited from interface org.eclipse.cdt.core.dom.ast.IBinding
getLinkage, getName, getNameCharArray, getOwner, getScopeMethods inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPBinding
getQualifiedName, getQualifiedNameCharArray, isGloballyQualifiedMethods inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPSpecialization
getSpecializedBinding, getTemplateParameterMap
-
Field Details
-
EMPTY_TEMPLATE_INSTANCE_ARRAY
- Since:
- 5.1
-
-
Method Details
-
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. Returnstrueif this binding is an explicit specialization.- Since:
- 5.2
-