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

# Class GPPParserExtensionConfiguration

java.lang.Object
org.eclipse.cdt.core.dom.parser.cpp.AbstractCPPParserExtensionConfiguration
org.eclipse.cdt.core.dom.parser.cpp.GPPParserExtensionConfiguration

All Implemented Interfaces:
  `ICPPParserExtensionConfiguration`

Direct Known Subclasses:
  `POPCPPParserExtensionConfiguration`

public class GPPParserExtensionConfiguration extends AbstractCPPParserExtensionConfiguration
Configures the parser for c++-sources as accepted by g++.

## Constructor Summary

Constructors
Constructor
Description
`GPPParserExtensionConfiguration()`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`allowRestrictPointerOperators()`
Support for GNU extension "Restricting Pointer Aliasing".
`Map<String,IToken.ContextSensitiveTokenType>`
`getAdditionalContextSensitiveKeywords()`
Additional variants of context-sensitive keywords.
`IBuiltinBindingsProvider`
`getBuiltinBindingsProvider()`
Provide additional built-in bindings.
`static GPPParserExtensionConfiguration`
`getInstance()`
`boolean`
`supportAlignOfUnaryExpression()`
Support for GNU extension "Inquiring on Alignment of Types or Variables".
`boolean`
`supportAttributeSpecifiers()`
See http://gcc.gnu.org/onlinedocs/gcc/Attribute-Syntax.html for more information on GCC's Attribute Specifiers.
`boolean`
`supportComplexNumbers()`
Support for GNU extension "Data types for complex numbers".
`boolean`
`supportDeclspecSpecifiers()`
Win32 compiler extensions also supported by GCC on Win32
`boolean`
`supportExtendedTemplateSyntax()`
Support for GNU extension "Extended Syntax for Template Instantiation".
`boolean`
`supportGCCStyleDesignators()`
Support for GNU extension "Designated Initializers".
`boolean`
`supportKnRC()`
Support for Kernighan and Richie (K&R) C.
`boolean`
`supportLongLongs()`
Support for GNU long long types.
`boolean`
`supportMinAndMaxOperators()`
`boolean`
`supportRestrictKeyword()`
`boolean`
`supportStatementsInExpressions()`
Support for GNU extension "Statements and Declarations in Expressions".
`boolean`
`supportTypeofUnaryExpressions()`
Support for GNU extension "Referring to a Type with typeof".

### Methods inherited from class org.eclipse.cdt.core.dom.parser.cpp.AbstractCPPParserExtensionConfiguration

`supportExtendedSizeofOperator, supportFunctionStyleAssembler, supportGCCOtherBuiltinSymbols, supportParameterInfoBlock, supportUserDefinedLiterals`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### GPPParserExtensionConfiguration

public GPPParserExtensionConfiguration()

## Method Details

### getInstance

public static GPPParserExtensionConfiguration getInstance()

Since:
  5.1

### allowRestrictPointerOperators

public boolean allowRestrictPointerOperators()
Description copied from interface: `ICPPParserExtensionConfiguration`
Support for GNU extension "Restricting Pointer Aliasing".

Specified by:
  `allowRestrictPointerOperators` in interface `ICPPParserExtensionConfiguration`
Overrides:
  `allowRestrictPointerOperators` in class `AbstractCPPParserExtensionConfiguration`
Returns:
  `true` if support for the extension should be enabled
See Also:
  - "http://gcc.gnu.org/onlinedocs/gcc/Restricted-Pointers.html"

### supportTypeofUnaryExpressions

public boolean supportTypeofUnaryExpressions()
Description copied from interface: `ICPPParserExtensionConfiguration`
Support for GNU extension "Referring to a Type with typeof".

Specified by:
  `supportTypeofUnaryExpressions` in interface `ICPPParserExtensionConfiguration`
Overrides:
  `supportTypeofUnaryExpressions` in class `AbstractCPPParserExtensionConfiguration`
Returns:
  `true` if support for the extension should be enabled
See Also:
  - "http://gcc.gnu.org/onlinedocs/gcc/Typeof.html"

### supportAlignOfUnaryExpression

public boolean supportAlignOfUnaryExpression()
Description copied from interface: `ICPPParserExtensionConfiguration`
Support for GNU extension "Inquiring on Alignment of Types or Variables".

Specified by:
  `supportAlignOfUnaryExpression` in interface `ICPPParserExtensionConfiguration`
Overrides:
  `supportAlignOfUnaryExpression` in class `AbstractCPPParserExtensionConfiguration`
Returns:
  `true` if support for the extension should be enabled
See Also:
  - "http://gcc.gnu.org/onlinedocs/gcc/Alignment.html"

### supportExtendedTemplateSyntax

public boolean supportExtendedTemplateSyntax()
Description copied from interface: `ICPPParserExtensionConfiguration`
Support for GNU extension "Extended Syntax for Template Instantiation".

Specified by:
  `supportExtendedTemplateSyntax` in interface `ICPPParserExtensionConfiguration`
Overrides:
  `supportExtendedTemplateSyntax` in class `AbstractCPPParserExtensionConfiguration`
Returns:
  `true` if support for the extension should be enabled
See Also:
  - "http://gcc.gnu.org/onlinedocs/gcc/Template-Instantiation.html"

### supportMinAndMaxOperators

public boolean supportMinAndMaxOperators()

Specified by:
  `supportMinAndMaxOperators` in interface `ICPPParserExtensionConfiguration`
Overrides:
  `supportMinAndMaxOperators` in class `AbstractCPPParserExtensionConfiguration`

### supportStatementsInExpressions

public boolean supportStatementsInExpressions()
Description copied from interface: `ICPPParserExtensionConfiguration`
Support for GNU extension "Statements and Declarations in Expressions".

Specified by:
  `supportStatementsInExpressions` in interface `ICPPParserExtensionConfiguration`
Overrides:
  `supportStatementsInExpressions` in class `AbstractCPPParserExtensionConfiguration`
Returns:
  `true` if support for the extension should be enabled
See Also:
  - "http://gcc.gnu.org/onlinedocs/gcc/Statement-Exprs.html"

### supportComplexNumbers

public boolean supportComplexNumbers()
Description copied from interface: `ICPPParserExtensionConfiguration`
Support for GNU extension "Data types for complex numbers".

Specified by:
  `supportComplexNumbers` in interface `ICPPParserExtensionConfiguration`
Overrides:
  `supportComplexNumbers` in class `AbstractCPPParserExtensionConfiguration`
Returns:
  `true` if support for the extension should be enabled
See Also:
  - "http://gcc.gnu.org/onlinedocs/gcc/Complex.html#Complex"

### supportRestrictKeyword

public boolean supportRestrictKeyword()

Specified by:
  `supportRestrictKeyword` in interface `ICPPParserExtensionConfiguration`
Overrides:
  `supportRestrictKeyword` in class `AbstractCPPParserExtensionConfiguration`

### supportLongLongs

public boolean supportLongLongs()
Description copied from interface: `ICPPParserExtensionConfiguration`
Support for GNU long long types.

Specified by:
  `supportLongLongs` in interface `ICPPParserExtensionConfiguration`
Overrides:
  `supportLongLongs` in class `AbstractCPPParserExtensionConfiguration`
Returns:
  `true` if support for the extension should be enabled
See Also:
  - "http://gcc.gnu.org/onlinedocs/gcc/Long-Long.html"

### supportKnRC

public boolean supportKnRC()
Description copied from interface: `ICPPParserExtensionConfiguration`
Support for Kernighan and Richie (K&R) C.

Specified by:
  `supportKnRC` in interface `ICPPParserExtensionConfiguration`
Overrides:
  `supportKnRC` in class `AbstractCPPParserExtensionConfiguration`
Returns:
  `true` if support for K&R C should be enabled

### supportAttributeSpecifiers

public boolean supportAttributeSpecifiers()
Description copied from interface: `ICPPParserExtensionConfiguration`
See http://gcc.gnu.org/onlinedocs/gcc/Attribute-Syntax.html for more information on GCC's Attribute Specifiers.

Specified by:
  `supportAttributeSpecifiers` in interface `ICPPParserExtensionConfiguration`
Overrides:
  `supportAttributeSpecifiers` in class `AbstractCPPParserExtensionConfiguration`
Returns:
  `true` if support for the extension should be enabled

### supportDeclspecSpecifiers

public boolean supportDeclspecSpecifiers()
Description copied from interface: `ICPPParserExtensionConfiguration`
Win32 compiler extensions also supported by GCC on Win32

Specified by:
  `supportDeclspecSpecifiers` in interface `ICPPParserExtensionConfiguration`
Overrides:
  `supportDeclspecSpecifiers` in class `AbstractCPPParserExtensionConfiguration`
Returns:
  `true` if support for the extension should be enabled

### supportGCCStyleDesignators

public boolean supportGCCStyleDesignators()
Description copied from interface: `ICPPParserExtensionConfiguration`
Support for GNU extension "Designated Initializers".

Specified by:
  `supportGCCStyleDesignators` in interface `ICPPParserExtensionConfiguration`
Overrides:
  `supportGCCStyleDesignators` in class `AbstractCPPParserExtensionConfiguration`
Returns:
  `true` if support for the extension should be enabled
See Also:
  - "http://gcc.gnu.org/onlinedocs/gcc/Designated-Inits.html"

### getBuiltinBindingsProvider

public IBuiltinBindingsProvider getBuiltinBindingsProvider()
Description copied from interface: `ICPPParserExtensionConfiguration`
Provide additional built-in bindings.

Specified by:
  `getBuiltinBindingsProvider` in interface `ICPPParserExtensionConfiguration`
Overrides:
  `getBuiltinBindingsProvider` in class `AbstractCPPParserExtensionConfiguration`
Returns:
  an instance of `IBuiltinBindingsProvider` or `null`

### getAdditionalContextSensitiveKeywords

public Map<String,IToken.ContextSensitiveTokenType> getAdditionalContextSensitiveKeywords()
Description copied from interface: `ICPPParserExtensionConfiguration`
Additional variants of context-sensitive keywords.

Specified by:
  `getAdditionalContextSensitiveKeywords` in interface `ICPPParserExtensionConfiguration`
Overrides:
  `getAdditionalContextSensitiveKeywords` in class `AbstractCPPParserExtensionConfiguration`