Eclipse CDT
7.0

org.eclipse.cdt.core.dom.ast
Interface IASTSwitchStatement

All Superinterfaces:
IASTAttributeOwner, IASTNode, IASTStatement
All Known Subinterfaces:
ICPPASTSwitchStatement

public interface IASTSwitchStatement
extends IASTStatement

The switch statement.


Nested Class Summary
 
Nested classes/interfaces inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
IASTNode.CopyStyle
 
Field Summary
static ASTNodeProperty BODY
          BODY represents the relationship between an IASTSwitchStatement and it's nested IASTStatement.
static ASTNodeProperty CONTROLLER_EXP
          CONTROLLER_EXP represents the relationship between an IASTSwitchStatement and it's nested IASTExpression.
 
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTStatement
EMPTY_STATEMENT_ARRAY
 
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTAttributeOwner
ATTRIBUTE
 
Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
EMPTY_NODE_ARRAY
 
Method Summary
 IASTSwitchStatement copy()
          Returns a mutable copy of the tree rooted at this node.
 IASTSwitchStatement copy(IASTNode.CopyStyle style)
          Returns a mutable copy of the tree rooted at this node.
 IASTStatement getBody()
          Returns the body of the switch statement.
 IASTExpression getControllerExpression()
          This returns the expression which determines which case to take.
 void setBody(IASTStatement body)
          Set the body for the switch statement.
 void setControllerExpression(IASTExpression controller)
          Set the controlling expression for the switch.
 
Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTAttributeOwner
addAttribute, getAttributes
 
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

CONTROLLER_EXP

static final ASTNodeProperty CONTROLLER_EXP
CONTROLLER_EXP represents the relationship between an IASTSwitchStatement and it's nested IASTExpression.


BODY

static final ASTNodeProperty BODY
BODY represents the relationship between an IASTSwitchStatement and it's nested IASTStatement.

Method Detail

getControllerExpression

IASTExpression getControllerExpression()
This returns the expression which determines which case to take.

Returns:
the controller expression

setControllerExpression

void setControllerExpression(IASTExpression controller)
Set the controlling expression for the switch.

Parameters:
controller - IASTExpression

getBody

IASTStatement getBody()
Returns the body of the switch statement. TODO - finding the cases could be a logical thing

Returns:
IASTStatement

setBody

void setBody(IASTStatement body)
Set the body for the switch statement.

Parameters:
body - IASTStatement

copy

IASTSwitchStatement 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

Specified by:
copy in interface IASTNode
Specified by:
copy in interface IASTStatement
Since:
5.1

copy

IASTSwitchStatement 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 IASTNode
Specified by:
copy in interface IASTStatement
Parameters:
style - IASTNode.CopyStyle create a copy with or without locations. Please see IASTNode.CopyStyle for restrictions on copies with Locations.
Since:
5.3

Eclipse CDT
7.0

Copyright (c) IBM Corp. and others 2004, 2012. All Rights Reserved.