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. 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 Details

    • EMPTY_TEMPLATE_INSTANCE_ARRAY

      static final ICPPTemplateInstance[] 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. Returns true if this binding is an explicit specialization.
      Since:
      5.2