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

# Interface ICPPClassSpecialization

All Superinterfaces:
  `Cloneable`, `org.eclipse.core.runtime.IAdaptable`, `IBinding`, `ICompositeType`, `ICPPBinding`, `ICPPClassType`, `ICPPSpecialization`, `ICPPTypeSpecialization`, `IType`

All Known Subinterfaces:
  `ICPPClassTemplatePartialSpecializationSpecialization`

public interface ICPPClassSpecialization extends ICPPTypeSpecialization, ICPPClassType
Specializations of all sorts of class types.

Since:
  5.1
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.IBinding

`EMPTY_BINDING_ARRAY`

### 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.cpp.ICPPClassType

`EMPTY_CLASS_ARRAY, k_class, v_private, v_protected, v_public`

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

`EMPTY_TYPE_ARRAY, TYPE_MATCHER`

## Method Summary

Modifier and Type
Method
Description
`ICPPMethod[]`
`getAllDeclaredMethods(IASTNode point)`
Deprecated.
Use `ICPPClassType.getAllDeclaredMethods()` instead.
`ICPPBase[]`
`getBases(IASTNode point)`
Deprecated.
Use `ICPPClassType.getBases()` instead.
`ICPPConstructor[]`
`getConstructors(IASTNode point)`
Deprecated.
Use `ICPPClassType.getConstructors()` instead.
`ICPPField[]`
`getDeclaredFields(IASTNode point)`
Deprecated.
Use `ICPPClassType.getDeclaredFields()` instead.
`ICPPMethod[]`
`getDeclaredMethods(IASTNode point)`
Deprecated.
Use `ICPPClassType.getDeclaredMethods()` instead.
`IField[]`
`getFields(IASTNode point)`
Deprecated.
Use `ICPPClassType.getFields()` instead.
`IBinding[]`
`getFriends(IASTNode point)`
Deprecated.
Use `ICPPClassType.getFriends()` instead.
`ICPPMethod[]`
`getMethods(IASTNode point)`
Deprecated.
Use `ICPPClassType.getMethods()` instead.
`ICPPClassType[]`
`getNestedClasses(IASTNode point)`
Deprecated.
Use `ICPPClassType.getNestedClasses()` instead.
`ICPPClassType`
`getSpecializedBinding()`
Return the binding that this specialization specializes.
`ICPPUsingDeclaration[]`
`getUsingDeclarations(IASTNode point)`
Deprecated.
Use `ICPPClassType.getUsingDeclarations()` instead.
`IBinding`
`specializeMember(IBinding binding)`
Creates a specialized binding for a member of the original class.
`IBinding`
`specializeMember(IBinding binding, IASTNode point)`
Deprecated.
Use `specializeMember(IBinding)` instead.

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

`getAdapter`

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

`getCompositeScope, getKey, isAnonymous`

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

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

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

`getTemplateParameterMap`

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

`clone, isSameType`

## Method Details

### getSpecializedBinding

ICPPClassType getSpecializedBinding()
Description copied from interface: `ICPPSpecialization`
Return the binding that this specialization specializes.

Specified by:
  `getSpecializedBinding` in interface `ICPPSpecialization`
Returns:
  the original binding that this is a specialization of

### specializeMember

IBinding specializeMember(IBinding binding)
Creates a specialized binding for a member of the original class. The result is a member of this class specialization.

### specializeMember

@Deprecated IBinding specializeMember(IBinding binding, IASTNode point)
Deprecated.
Use `specializeMember(IBinding)` instead.

Since:
  5.5

### getBases

@Deprecated ICPPBase[] getBases(IASTNode point)
Deprecated.
Use `ICPPClassType.getBases()` instead.

Since:
  5.5

### getConstructors

@Deprecated ICPPConstructor[] getConstructors(IASTNode point)
Deprecated.
Use `ICPPClassType.getConstructors()` instead.

Since:
  5.5

### getDeclaredFields

@Deprecated ICPPField[] getDeclaredFields(IASTNode point)
Deprecated.
Use `ICPPClassType.getDeclaredFields()` instead.

Since:
  5.5

### getMethods

@Deprecated ICPPMethod[] getMethods(IASTNode point)
Deprecated.
Use `ICPPClassType.getMethods()` instead.

Since:
  5.5

### getAllDeclaredMethods

@Deprecated ICPPMethod[] getAllDeclaredMethods(IASTNode point)
Deprecated.
Use `ICPPClassType.getAllDeclaredMethods()` instead.

Since:
  5.5

### getDeclaredMethods

@Deprecated ICPPMethod[] getDeclaredMethods(IASTNode point)
Deprecated.
Use `ICPPClassType.getDeclaredMethods()` instead.

Since:
  5.5

### getFriends

@Deprecated IBinding[] getFriends(IASTNode point)
Deprecated.
Use `ICPPClassType.getFriends()` instead.

Since:
  5.5

### getFields

@Deprecated IField[] getFields(IASTNode point)
Deprecated.
Use `ICPPClassType.getFields()` instead.

Since:
  5.5

### getNestedClasses

@Deprecated ICPPClassType[] getNestedClasses(IASTNode point)
Deprecated.
Use `ICPPClassType.getNestedClasses()` instead.

Since:
  5.5

### getUsingDeclarations

@Deprecated ICPPUsingDeclaration[] getUsingDeclarations(IASTNode point)
Deprecated.
Use `ICPPClassType.getUsingDeclarations()` instead.

Since:
  6.3