Package org.eclipse.cdt.core.dom.ast
Interface IASTSwitchStatement
- All Superinterfaces:
IASTAttributeOwner,IASTNode,IASTStatement
- All Known Subinterfaces:
ICPPASTSwitchStatement
The switch statement.
- 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
FieldsModifier and TypeFieldDescriptionstatic final ASTNodePropertyBODYrepresents the relationship between anIASTSwitchStatementand it's nestedIASTStatement.static final ASTNodePropertyCONTROLLER_EXPrepresents the relationship between anIASTSwitchStatementand it's nestedIASTExpression.Fields inherited from interface org.eclipse.cdt.core.dom.ast.IASTAttributeOwner
ATTRIBUTE, ATTRIBUTE_SPECIFIERFields inherited from interface org.eclipse.cdt.core.dom.ast.IASTNode
EMPTY_NODE_ARRAYFields inherited from interface org.eclipse.cdt.core.dom.ast.IASTStatement
EMPTY_STATEMENT_ARRAY -
Method Summary
Modifier and TypeMethodDescriptioncopy()Returns a mutable copy of the tree rooted at this node.copy(IASTNode.CopyStyle style) Returns a mutable copy of the tree rooted at this node.getBody()Returns the body of the switch statement.This returns the expression which determines which case to take.voidsetBody(IASTStatement body) Set the body for the switch statement.voidsetControllerExpression(IASTExpression controller) Set the controlling expression for the switch.Methods inherited from interface org.eclipse.cdt.core.dom.ast.IASTAttributeOwner
addAttribute, addAttributeSpecifier, getAttributes, getAttributeSpecifiersMethods 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
-
CONTROLLER_EXP
CONTROLLER_EXPrepresents the relationship between anIASTSwitchStatementand it's nestedIASTExpression. -
BODY
BODYrepresents the relationship between anIASTSwitchStatementand it's nestedIASTStatement.
-
-
Method Details
-
getControllerExpression
IASTExpression getControllerExpression()This returns the expression which determines which case to take.- Returns:
- the controller expression
-
setControllerExpression
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
Set the body for the switch statement.- Parameters:
body-IASTStatement
-
copy
IASTSwitchStatement copy()Description copied from interface:IASTNodeReturns 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:
copyin interfaceIASTNode- Specified by:
copyin interfaceIASTStatement- Since:
- 5.1
-
copy
Description copied from interface:IASTNodeReturns 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:
copyin interfaceIASTNode- Specified by:
copyin interfaceIASTStatement- Parameters:
style-IASTNode.CopyStylecreate a copy with or without locations. Please seeIASTNode.CopyStylefor restrictions on copies with Locations.- Since:
- 5.3
-