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

# Interface ICPPTemplateParameterMap

public interface ICPPTemplateParameterMap
Models the mapping of template parameters to values, or pack-expansions.

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.

## Method Summary

Modifier and Type
Method
Description
`Integer[]`
`getAllParameterPositions()`
Returns the array of template parameter positions, for which a mapping exists.
`ICPPTemplateArgument`
`getArgument(int paramID)`
Returns the value for the template parameter with the given id.
`ICPPTemplateArgument`
`getArgument(ICPPTemplateParameter param)`
Returns the value for the template parameter in the map, or `null` if the parameter is not mapped or the parameter is a parameter pack.
`ICPPTemplateArgument`
`getArgument(ICPPTemplateParameter param, int packOffset)`
If 'param' is not a parameter pack, returns the value for 'param' in the map.
`ICPPTemplateArgument[]`
`getPackExpansion(int paramID)`
Returns the values for the template parameter pack with the given id in the map, or `null` if the parameter is not mapped or is not a parameter pack.
`ICPPTemplateArgument[]`
`getPackExpansion(ICPPTemplateParameter param)`
Returns the values for the template parameter pack in the map, or `null` if the parameter is not mapped or is no parameter pack.

## Method Details

### getArgument

ICPPTemplateArgument getArgument(int paramID)
Returns the value for the template parameter with the given id.

See Also:
  - `ICPPTemplateParameter.getParameterID()`

### getArgument

ICPPTemplateArgument getArgument(ICPPTemplateParameter param)
Returns the value for the template parameter in the map, or `null` if the parameter is not mapped or the parameter is a parameter pack.

### getPackExpansion

ICPPTemplateArgument[] getPackExpansion(int paramID)
Returns the values for the template parameter pack with the given id in the map, or `null` if the parameter is not mapped or is not a parameter pack.

Since:
  5.2

### getPackExpansion

ICPPTemplateArgument[] getPackExpansion(ICPPTemplateParameter param)
Returns the values for the template parameter pack in the map, or `null` if the parameter is not mapped or is no parameter pack.

Since:
  5.2

### getArgument

ICPPTemplateArgument getArgument(ICPPTemplateParameter param, int packOffset)
If 'param' is not a parameter pack, returns the value for 'param' in the map. If 'param' is a parameter pack, returns the value at position 'packOffset' in the pack of values for 'param' in the map. Returns `null` is 'param' is not mapped.

Since:
  5.5

### getAllParameterPositions

Integer[] getAllParameterPositions()
Returns the array of template parameter positions, for which a mapping exists.