org.eclipse.cdt.core.dom.ast.cpp

## Interface ICPPTemplateTemplateParameter

All Superinterfaces:
  Cloneable, org.eclipse.core.runtime.IAdaptable, IBinding, ICompositeType, ICPPBinding, ICPPClassTemplate, ICPPClassType, ICPPPartiallySpecializable, ICPPTemplateDefinition, ICPPTemplateParameter, IType

    public interface ICPPTemplateTemplateParameter
    extends ICPPTemplateParameter, ICPPClassTemplate

Template parameters of type template.

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 inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPTemplateParameter

`EMPTY_TEMPLATE_PARAMETER_ARRAY`

### Fields inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPClassType

`EMPTY_CLASS_ARRAY, k_class, v_private, v_protected, v_public`

### Fields inherited from interface org.eclipse.cdt.core.dom.ast.ICompositeType

`k_struct, k_union`

### Fields inherited from interface org.eclipse.cdt.core.dom.ast.IType

`EMPTY_TYPE_ARRAY, TYPE_MATCHER`

### Fields inherited from interface org.eclipse.cdt.core.dom.ast.IBinding

`EMPTY_BINDING_ARRAY`

### Method Summary

All Methods Instance Methods Abstract Methods
`IType` `getDefault()` Returns the default value for this parameter, or `null`.
`ICPPClassTemplatePartialSpecialization[]` `getPartialSpecializations()` Returns the partial specializations of this class template.
`boolean` `isSameType(IType type)` Types containing template parameters need to be compared even before it is known to which binding the template parameter belongs to.

### Methods inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPTemplateParameter

`getDefaultValue, getParameterID, getParameterPosition, getTemplateNestingLevel, isParameterPack`

### Methods inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPClassTemplate

`asDeferredInstance`

### Methods inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPClassType

`findField, getAllDeclaredMethods, getBases, getConstructors, getDeclaredFields, getDeclaredMethods, getFields, getFriends, getMethods, getNestedClasses, getUsingDeclarations, getVisibility, isFinal`

### Methods inherited from interface org.eclipse.cdt.core.dom.ast.ICompositeType

`getCompositeScope, getKey, isAnonymous`

### Methods inherited from interface org.eclipse.cdt.core.dom.ast.IType

`clone`

### Methods inherited from interface org.eclipse.cdt.core.dom.ast.cpp.ICPPTemplateDefinition

`getTemplateParameters`

### 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.IBinding

`getLinkage, getName, getNameCharArray, getOwner, getScope`

### Methods inherited from interface org.eclipse.core.runtime.IAdaptable

`getAdapter`

### Method Detail

#### getDefault

    IType getDefault()
              throws DOMException

Returns the default value for this parameter, or `null`.

Throws:
  `DOMException`

#### isSameType

    boolean isSameType(IType type)

Types containing template parameters need to be compared even before it is known to which binding the template parameter belongs to. Therefore `isSameType(IType)` compares the kind and the parameter position of the template parameter, only. The name and the owner is ignored.

Specified by:
  `isSameType` in interface `IType`
Parameters:
  `type` - can be `null`.
Since:
  5.1

#### getPartialSpecializations

    ICPPClassTemplatePartialSpecialization[] getPartialSpecializations()

Description copied from interface: `ICPPClassTemplate`
Returns the partial specializations of this class template.

Specified by:
  `getPartialSpecializations` in interface `ICPPClassTemplate`
Specified by:
  `getPartialSpecializations` in interface `ICPPPartiallySpecializable`