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

# Interface IMacroBinding

All Superinterfaces:
  `org.eclipse.core.runtime.IAdaptable`, `IBinding`

All Known Subinterfaces:
  `IIndexMacro`

public interface IMacroBinding extends IBinding
Models bindings for macro names.

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`

## Method Summary

Modifier and Type
Method
Description
`char[]`
`getExpansion()`
Returns the expansion of this macro definition, or `null` if the definition is not available.
`char[]`
`getExpansionImage()`
Returns the image of the expansion (also containing comments), or `null` if the definition is not available.
`char[][]`
`getParameterList()`
Returns the parameter names or `null` if this is not a function style macro.
`char[][]`
`getParameterPlaceholderList()`
Returns the parameter list where the name of the last parameter is changed if this is a variadic macro, or `null` if this is not a function style macro.
`boolean`
`isDynamic()`
Returns `true` if this is a dynamic macro.
`boolean`
`isFunctionStyle()`
Returns `true` if this is a function-style macro.

### 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`

## Method Details

### isFunctionStyle

boolean isFunctionStyle()
Returns `true` if this is a function-style macro.

Since:
  5.0

### isDynamic

boolean isDynamic()
Returns `true` if this is a dynamic macro.

Since:
  5.0

### getParameterList

char[][] getParameterList()
Returns the parameter names or `null` if this is not a function style macro.

### getExpansion

char[] getExpansion()
Returns the expansion of this macro definition, or `null` if the definition is not available. For dynamic macros an exemplary image is returned.

Since:
  5.0

### getParameterPlaceholderList

char[][] getParameterPlaceholderList()
Returns the parameter list where the name of the last parameter is changed if this is a variadic macro, or `null` if this is not a function style macro. The parameter '...' will be changed to '__VA_ARGS__' Parameters like 'a...' will be changed to 'a'.

Since:
  5.0

### getExpansionImage

char[] getExpansionImage()
Returns the image of the expansion (also containing comments), or `null` if the definition is not available. For dynamic macros an exemplary image is returned.

Since:
  5.0