org.eclipse.cdt.core.dom.ast

## Interface IASTPreprocessorFunctionStyleMacroDefinition

All Superinterfaces:
  IASTNameOwner, IASTNode, IASTPreprocessorMacroDefinition, IASTPreprocessorStatement

    public interface IASTPreprocessorFunctionStyleMacroDefinition
    extends IASTPreprocessorMacroDefinition

This interface represent a preprocessor function-style macro definition. e.g.

     #define ABC(def) GHI

Note: macros that are expanded as parameters to function style macros are not captured in this abstraction.

Restriction:
  This interface is not intended to be implemented by clients.
Restriction:
  This interface is not intended to be extended by clients.

### Nested Class Summary

### Nested classes/interfaces inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode

`IASTNode.CopyStyle`

### Field Summary

Fields
`static ASTNodeProperty` `PARAMETER` This property represents the relationship between a function style macro definition and one of its parameters.

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

`MACRO_NAME`

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

`EMPTY_NODE_ARRAY`

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

`r_declaration, r_definition, r_reference, r_unclear`

### Method Summary

All Methods Instance Methods Abstract Methods
`void` `addParameter(IASTFunctionStyleMacroParameter parm)` Adds a function-style macro parameter.
`IASTFunctionStyleMacroParameter[]` `getParameters()` Returns the macro parameters.

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

`getExpansion, getExpansionLocation, getName, isActive`

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

`accept, contains, copy, copy, getChildren, getContainingFilename, getFileLocation, getLeadingSyntax, getNodeLocations, getOriginalNode, getParent, getPropertyInParent, getRawSignature, getSyntax, getTrailingSyntax, getTranslationUnit, isFrozen, isPartOfTranslationUnitFile, setParent, setPropertyInParent`

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

`getRoleForName`

### Field Detail

#### PARAMETER

    static final ASTNodeProperty PARAMETER

This property represents the relationship between a function style macro definition and one of its parameters.

### Method Detail

#### getParameters

    IASTFunctionStyleMacroParameter[] getParameters()

Returns the macro parameters.

Returns:
  `IASTFunctionStyleMacroParameter[]` parameters

#### addParameter

    void addParameter(IASTFunctionStyleMacroParameter parm)

Adds a function-style macro parameter.

Parameters:
  `parm` - the parameter to add