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

# Interface IASTTypeIdExpression

All Superinterfaces:
  `IASTExpression`, `IASTInitializerClause`, `IASTNode`

All Known Subinterfaces:
  `ICPPASTTypeIdExpression`, `IGNUASTTypeIdExpression`

public interface IASTTypeIdExpression extends IASTExpression

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.IASTExpression

`IASTExpression.ValueCategory`

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

`IASTNode.CopyStyle`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int`
`op_alignof`
For gnu-parsers, only.
`static final int`
`op_has_nothrow_assign`
Built-in type trait of g++.
`static final int`
`op_has_nothrow_constructor`
Built-in type trait of g++.
`static final int`
`op_has_nothrow_copy`
Built-in type trait of g++.
`static final int`
`op_has_trivial_assign`
Built-in type trait of g++.
`static final int`
`op_has_trivial_constructor`
Built-in type trait of g++.
`static final int`
`op_has_trivial_copy`
Built-in type trait of g++.
`static final int`
`op_has_trivial_destructor`
Built-in type trait of g++.
`static final int`
`op_has_unique_object_representations`
Built-in type trait of g++.
`static final int`
`op_has_virtual_destructor`
Built-in type trait of g++.
`static final int`
`op_is_abstract`
Built-in type trait of g++.
`static final int`
`op_is_aggregate`
Built-in type trait of g++.
`static final int`
`op_is_class`
Built-in type trait of g++.
`static final int`
`op_is_empty`
Built-in type trait of g++.
`static final int`
`op_is_enum`
Built-in type trait of g++.
`static final int`
`op_is_final`
Built-in type trait of g++.
`static final int`
`op_is_function`
Built-in type trait of Clang.
`static final int`
`op_is_literal_type`
Built-in type trait of g++.
`static final int`
`op_is_pod`
Built-in type trait of g++.
`static final int`
`op_is_polymorphic`
Built-in type trait of g++.
`static final int`
`op_is_standard_layout`
Built-in type trait of g++.
`static final int`
`op_is_trivial`
Built-in type trait of g++.
`static final int`
`op_is_trivially_copyable`
Built-in type trait of g++.
`static final int`
`op_is_union`
Built-in type trait of g++.
`static final int`
`op_sizeof`
`op_sizeof` sizeof (typeId) expression
`static final int`
`op_sizeofParameterPack`
`op_sizeofParameterPack` is used for sizeof...
`static final int`
`op_typeid`
For c++, only.
`static final int`
`op_typeof`
For gnu-parsers, only.
`static final ASTNodeProperty`
`TYPE_ID`
`TYPEID` represents the relationship between an `IASTTypeIdExpression` and it's nested `IASTTypeId`.

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

`EMPTY_EXPRESSION_ARRAY`

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

`EMPTY_NODE_ARRAY`

## Method Summary

Modifier and Type
Method
Description
`IASTTypeIdExpression`
`copy()`
Returns a mutable copy of the tree rooted at this node.
`IASTTypeIdExpression`
`copy(IASTNode.CopyStyle style)`
Returns a mutable copy of the tree rooted at this node.
`int`
`getOperator()`
Returns the operator for the expression.
`IASTTypeId`
`getTypeId()`
Get the type Id.
`void`
`setOperator(int value)`
Sets the operator for the expression.
`void`
`setTypeId(IASTTypeId typeId)`
Set the type Id.

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

`getExpressionType, getValueCategory, isLValue`

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

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

## Field Details

### op_sizeof

static final int op_sizeof
`op_sizeof` sizeof (typeId) expression

See Also:
  - Constant Field Values

### op_typeid

static final int op_typeid
For c++, only.

See Also:
  - Constant Field Values

### op_alignof

static final int op_alignof
For gnu-parsers, only. `op_alignOf` is used for __alignOf( typeId ) type expressions.

See Also:
  - Constant Field Values

### op_typeof

static final int op_typeof
For gnu-parsers, only. `op_typeof` is used for typeof( typeId ) type expressions.

See Also:
  - Constant Field Values

### op_has_nothrow_assign

static final int op_has_nothrow_assign
Built-in type trait of g++.

Since:
  5.3
See Also:
  - Constant Field Values

### op_has_nothrow_copy

static final int op_has_nothrow_copy
Built-in type trait of g++.

Since:
  5.3
See Also:
  - Constant Field Values

### op_has_nothrow_constructor

static final int op_has_nothrow_constructor
Built-in type trait of g++.

Since:
  5.3
See Also:
  - Constant Field Values

### op_has_trivial_assign

static final int op_has_trivial_assign
Built-in type trait of g++.

Since:
  5.3
See Also:
  - Constant Field Values

### op_has_trivial_copy

static final int op_has_trivial_copy
Built-in type trait of g++.

Since:
  5.3
See Also:
  - Constant Field Values

### op_has_trivial_constructor

static final int op_has_trivial_constructor
Built-in type trait of g++.

Since:
  5.3
See Also:
  - Constant Field Values

### op_has_trivial_destructor

static final int op_has_trivial_destructor
Built-in type trait of g++.

Since:
  5.3
See Also:
  - Constant Field Values

### op_has_virtual_destructor

static final int op_has_virtual_destructor
Built-in type trait of g++.

Since:
  5.3
See Also:
  - Constant Field Values

### op_is_abstract

static final int op_is_abstract
Built-in type trait of g++.

Since:
  5.3
See Also:
  - Constant Field Values

### op_is_class

static final int op_is_class
Built-in type trait of g++.

Since:
  5.3
See Also:
  - Constant Field Values

### op_is_empty

static final int op_is_empty
Built-in type trait of g++.

Since:
  5.3
See Also:
  - Constant Field Values

### op_is_enum

static final int op_is_enum
Built-in type trait of g++.

Since:
  5.3
See Also:
  - Constant Field Values

### op_is_pod

static final int op_is_pod
Built-in type trait of g++.

Since:
  5.3
See Also:
  - Constant Field Values

### op_is_polymorphic

static final int op_is_polymorphic
Built-in type trait of g++.

Since:
  5.3
See Also:
  - Constant Field Values

### op_is_union

static final int op_is_union
Built-in type trait of g++.

Since:
  5.3
See Also:
  - Constant Field Values

### op_is_literal_type

static final int op_is_literal_type
Built-in type trait of g++.

Since:
  5.5
See Also:
  - Constant Field Values

### op_is_standard_layout

static final int op_is_standard_layout
Built-in type trait of g++.

Since:
  5.5
See Also:
  - Constant Field Values

### op_is_trivial

static final int op_is_trivial
Built-in type trait of g++.

Since:
  5.5
See Also:
  - Constant Field Values

### op_sizeofParameterPack

static final int op_sizeofParameterPack
`op_sizeofParameterPack` is used for sizeof... ( typeid ) expressions.

Since:
  5.5
See Also:
  - Constant Field Values

### op_is_final

static final int op_is_final
Built-in type trait of g++.

Since:
  5.6
See Also:
  - Constant Field Values

### op_is_trivially_copyable

static final int op_is_trivially_copyable
Built-in type trait of g++.

Since:
  6.0
See Also:
  - Constant Field Values

### op_has_unique_object_representations

static final int op_has_unique_object_representations
Built-in type trait of g++.

Since:
  8.1
See Also:
  - Constant Field Values

### op_is_aggregate

static final int op_is_aggregate
Built-in type trait of g++.

Since:
  8.1
See Also:
  - Constant Field Values

### op_is_function

static final int op_is_function
Built-in type trait of Clang.

Since:
  8.4
See Also:
  - Constant Field Values

### TYPE_ID

static final ASTNodeProperty TYPE_ID
`TYPEID` represents the relationship between an `IASTTypeIdExpression` and it's nested `IASTTypeId`.

## Method Details

### getOperator

int getOperator()
Returns the operator for the expression.

Returns:
  int

### setOperator

void setOperator(int value)
Sets the operator for the expression.

Parameters:
  `value` - int

### setTypeId

void setTypeId(IASTTypeId typeId)
Set the type Id.

Parameters:
  `typeId` -

### getTypeId

IASTTypeId getTypeId()
Get the type Id.

### copy

IASTTypeIdExpression copy()
Description copied from interface: `IASTNode`
Returns a mutable copy of the tree rooted at this node. The following postconditions hold:

     copy.getParent() == null
     copy.getPropertyInParent() == null
     copy.isFrozen() == false

Preprocessor nodes do not currently support being copied. Implicit name nodes are not copied, instead they can be regenerated if required.

Calling this method is equivalent to `copy(CopyStyle.withoutLocations)`.

Specified by:
  `copy` in interface `IASTExpression`
Specified by:
  `copy` in interface `IASTInitializerClause`
Specified by:
  `copy` in interface `IASTNode`
Since:
  5.1

### copy

IASTTypeIdExpression copy(IASTNode.CopyStyle style)
Description copied from interface: `IASTNode`
Returns a mutable copy of the tree rooted at this node. The following postconditions hold:

     copy.getParent() == null
     copy.getPropertyInParent() == null
     copy.isFrozen() == false

Preprocessor nodes do not currently support being copied. Implicit name nodes are not copied, instead they can be regenerated if required.

Specified by:
  `copy` in interface `IASTExpression`
Specified by:
  `copy` in interface `IASTInitializerClause`
Specified by:
  `copy` in interface `IASTNode`
Parameters:
  `style` - `IASTNode.CopyStyle` create a copy with or without locations. Please see `IASTNode.CopyStyle` for restrictions on copies with Locations.
Since:
  5.3