Package org.eclipse.jdt.core.dom
Class EnhancedForStatement
- java.lang.Object
-
- org.eclipse.jdt.core.dom.ASTNode
-
- org.eclipse.jdt.core.dom.Statement
-
- org.eclipse.jdt.core.dom.EnhancedForStatement
-
public class EnhancedForStatement extends Statement
Enhanced For statement AST node type (added in JLS3 API).EnhancedForStatement: for ( FormalParameter : Expression ) Statement
The FormalParameter is represented by a
SingleVariableDeclaration
(without an initializer).- Since:
- 3.1
- Restriction:
- This class is not intended to be instantiated by clients.
-
-
Field Summary
Fields Modifier and Type Field Description static ChildPropertyDescriptor
BODY_PROPERTY
The "body" structural property of this node type (child type:Statement
).static ChildPropertyDescriptor
EXPRESSION_PROPERTY
The "expression" structural property of this node type (child type:Expression
).static ChildPropertyDescriptor
PARAMETER_PROPERTY
The "parameter" structural property of this node type (child type:SingleVariableDeclaration
).-
Fields inherited from class org.eclipse.jdt.core.dom.ASTNode
ANNOTATION_TYPE_DECLARATION, ANNOTATION_TYPE_MEMBER_DECLARATION, ANONYMOUS_CLASS_DECLARATION, ARRAY_ACCESS, ARRAY_CREATION, ARRAY_INITIALIZER, ARRAY_TYPE, ASSERT_STATEMENT, ASSIGNMENT, BLOCK, BLOCK_COMMENT, BOOLEAN_LITERAL, BREAK_STATEMENT, CAST_EXPRESSION, CATCH_CLAUSE, CHARACTER_LITERAL, CLASS_INSTANCE_CREATION, COMPILATION_UNIT, CONDITIONAL_EXPRESSION, CONSTRUCTOR_INVOCATION, CONTINUE_STATEMENT, CREATION_REFERENCE, DIMENSION, DO_STATEMENT, EMPTY_STATEMENT, ENHANCED_FOR_STATEMENT, ENUM_CONSTANT_DECLARATION, ENUM_DECLARATION, EXPORTS_DIRECTIVE, EXPRESSION_METHOD_REFERENCE, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_STATEMENT, IF_STATEMENT, IMPORT_DECLARATION, INFIX_EXPRESSION, INITIALIZER, INSTANCEOF_EXPRESSION, INTERSECTION_TYPE, JAVADOC, LABELED_STATEMENT, LAMBDA_EXPRESSION, LINE_COMMENT, MALFORMED, MARKER_ANNOTATION, MEMBER_REF, MEMBER_VALUE_PAIR, METHOD_DECLARATION, METHOD_INVOCATION, METHOD_REF, METHOD_REF_PARAMETER, MODIFIER, MODULE_DECLARATION, MODULE_MODIFIER, NAME_QUALIFIED_TYPE, NORMAL_ANNOTATION, NULL_LITERAL, NUMBER_LITERAL, OPENS_DIRECTIVE, ORIGINAL, PACKAGE_DECLARATION, PARAMETERIZED_TYPE, PARENTHESIZED_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, PROTECT, PROVIDES_DIRECTIVE, QUALIFIED_NAME, QUALIFIED_TYPE, RECORD_DECLARATION, RECOVERED, REQUIRES_DIRECTIVE, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_MEMBER_ANNOTATION, SINGLE_VARIABLE_DECLARATION, STRING_LITERAL, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SUPER_METHOD_REFERENCE, SWITCH_CASE, SWITCH_EXPRESSION, SWITCH_STATEMENT, SYNCHRONIZED_STATEMENT, TAG_ELEMENT, TEXT_BLOCK, TEXT_ELEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, TYPE_METHOD_REFERENCE, TYPE_PARAMETER, UNION_TYPE, USES_DIRECTIVE, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WILDCARD_TYPE, YIELD_STATEMENT
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Statement
getBody()
Returns the body of this enchanced for statement.Expression
getExpression()
Returns the expression of this enhanced for statement.SingleVariableDeclaration
getParameter()
Returns the formal parameter in this enhanced for statement.static List
propertyDescriptors(int apiLevel)
Returns a list of structural property descriptors for this node type.void
setBody(Statement statement)
Sets the body of this enhanced for statement.void
setExpression(Expression expression)
Sets the expression of this enhanced for statement.void
setParameter(SingleVariableDeclaration parameter)
Sets the formal parameter in this enhanced for statement.-
Methods inherited from class org.eclipse.jdt.core.dom.Statement
getLeadingComment, setLeadingComment
-
Methods inherited from class org.eclipse.jdt.core.dom.ASTNode
accept, copySubtree, copySubtrees, delete, equals, getAST, getFlags, getLength, getLocationInParent, getNodeType, getParent, getProperty, getRoot, getStartPosition, getStructuralProperty, hashCode, nodeClassForType, properties, setFlags, setProperty, setSourceRange, setStructuralProperty, structuralPropertiesForType, subtreeBytes, subtreeMatch, toString
-
-
-
-
Field Detail
-
PARAMETER_PROPERTY
public static final ChildPropertyDescriptor PARAMETER_PROPERTY
The "parameter" structural property of this node type (child type:SingleVariableDeclaration
).
-
EXPRESSION_PROPERTY
public static final ChildPropertyDescriptor EXPRESSION_PROPERTY
The "expression" structural property of this node type (child type:Expression
).
-
BODY_PROPERTY
public static final ChildPropertyDescriptor BODY_PROPERTY
The "body" structural property of this node type (child type:Statement
).
-
-
Method Detail
-
propertyDescriptors
public static List propertyDescriptors(int apiLevel)
Returns a list of structural property descriptors for this node type. Clients must not modify the result.- Parameters:
apiLevel
- the API level; one of theAST.JLS*
constants- Returns:
- a list of property descriptors (element type:
StructuralPropertyDescriptor
)
-
getParameter
public SingleVariableDeclaration getParameter()
Returns the formal parameter in this enhanced for statement.- Returns:
- the parameter
-
setParameter
public void setParameter(SingleVariableDeclaration parameter)
Sets the formal parameter in this enhanced for statement.- Parameters:
parameter
- the new parameter- Throws:
IllegalArgumentException
- if:- the node belongs to a different AST
- the node already has a parent
-
getExpression
public Expression getExpression()
Returns the expression of this enhanced for statement.- Returns:
- the expression node
-
setExpression
public void setExpression(Expression expression)
Sets the expression of this enhanced for statement.- Parameters:
expression
- the new expression node- Throws:
IllegalArgumentException
- if:- the node belongs to a different AST
- the node already has a parent
- a cycle in would be created
-
getBody
public Statement getBody()
Returns the body of this enchanced for statement.- Returns:
- the body statement node
-
setBody
public void setBody(Statement statement)
Sets the body of this enhanced for statement.- Parameters:
statement
- the body statement node- Throws:
IllegalArgumentException
- if:- the node belongs to a different AST
- the node already has a parent
- a cycle in would be created
-
-