org.eclipse.cdt.core.dom.ast

## Interface IASTCastExpression

All Superinterfaces:
  IASTExpression, IASTInitializerClause, IASTNode

All Known Subinterfaces:
  ICPPASTCastExpression

    public interface IASTCastExpression
    extends IASTExpression

This interface represents a cast expression of the form (TypeId)operand.

### 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
`static int` `op_cast` `op_cast` represents a traditional cast.
`static int` `op_last` `op_last` for subinterfaces
`static ASTNodeProperty` `OPERAND` `OPERAND` represents the relationship between a cast expression and the expression it is casting (operand).
`static ASTNodeProperty` `TYPE_ID` `TYPE_ID` represents the relationship between a cast expression and the type cast to.

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

All Methods Instance Methods Abstract Methods
`IASTCastExpression` `copy()` Returns a mutable copy of the tree rooted at this node.
`IASTCastExpression` `copy(IASTNode.CopyStyle style)` Returns a mutable copy of the tree rooted at this node.
`IASTExpression` `getOperand()` Get expression being cast.
`int` `getOperator()` Get the type of cast (as an operator).
`IASTTypeId` `getTypeId()` Get the typeId.
`void` `setOperand(IASTExpression expression)` Set the expression being cast.
`void` `setOperator(int value)` Set the operator (type of cast).
`void` `setTypeId(IASTTypeId typeId)` Set the typeId.

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

#### TYPE_ID

    static final ASTNodeProperty TYPE_ID

`TYPE_ID` represents the relationship between a cast expression and the type cast to.

#### OPERAND

    static final ASTNodeProperty OPERAND

`OPERAND` represents the relationship between a cast expression and the expression it is casting (operand).

#### op_cast

    static final int op_cast

`op_cast` represents a traditional cast.

See Also:
  Constant Field Values

#### op_last

    static final int op_last

`op_last` for subinterfaces

See Also:
  Constant Field Values

### Method Detail

#### getOperator

    int getOperator()

Get the type of cast (as an operator).

Returns:
  operator

#### setOperator

    void setOperator(int value)

Set the operator (type of cast).

Parameters:
  `value` -

#### getOperand

    IASTExpression getOperand()

Get expression being cast.

Returns:
  `IASTExpression` the expression being cast

#### setOperand

    void setOperand(IASTExpression expression)

Set the expression being cast.

Parameters:
  `expression` - `IASTExpression` the expression to be cast

#### setTypeId

    void setTypeId(IASTTypeId typeId)

Set the typeId.

Parameters:
  `typeId` - `IASTTypeId` to be set.

#### getTypeId

    IASTTypeId getTypeId()

Get the typeId.

Returns:
  `IASTTypeId` representing type being casted to.

#### copy

    IASTCastExpression 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

    IASTCastExpression 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