Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse JDT Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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

Note: This API element is only needed for dealing with Java code that uses new language features of J2SE 1.5. It is included in anticipation of J2SE 1.5 support, which is planned for the next release of Eclipse after 3.0, and may change slightly before reaching its final form.

Since:
  3.0

Field Summary
`static ChildPropertyDescriptor` | `BODY_PROPERTY` The "body" structural property of this node type.
`static ChildPropertyDescriptor` | `EXPRESSION_PROPERTY` The "expression" structural property of this node type.
`static ChildPropertyDescriptor` | `PARAMETER_PROPERTY` The "parameter" structural property of this node type.

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, DO_STATEMENT, EMPTY_STATEMENT, ENHANCED_FOR_STATEMENT, ENUM_CONSTANT_DECLARATION, ENUM_DECLARATION, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_STATEMENT, IF_STATEMENT, IMPORT_DECLARATION, INFIX_EXPRESSION, INITIALIZER, INSTANCEOF_EXPRESSION, JAVADOC, LABELED_STATEMENT, LINE_COMMENT, MALFORMED, MARKER_ANNOTATION, MEMBER_REF, MEMBER_VALUE_PAIR, METHOD_DECLARATION, METHOD_INVOCATION, METHOD_REF, METHOD_REF_PARAMETER, MODIFIER, NORMAL_ANNOTATION, NULL_LITERAL, NUMBER_LITERAL, ORIGINAL, PACKAGE_DECLARATION, PARAMETERIZED_TYPE, PARENTHESIZED_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, PROTECT, QUALIFIED_NAME, QUALIFIED_TYPE, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_MEMBER_ANNOTATION, SINGLE_VARIABLE_DECLARATION, STRING_LITERAL, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SWITCH_CASE, SWITCH_STATEMENT, SYNCHRONIZED_STATEMENT, TAG_ELEMENT, TEXT_ELEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, TYPE_PARAMETER, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WILDCARD_TYPE`

Method Summary
`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.
`IVariableBinding` | `resolveBinding()` Resolves and returns the binding for the loop variable of this enhanced for statement.
`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, nodeClassForType, properties, setFlags, setProperty, setSourceRange, setStructuralProperty, structuralPropertiesForType, subtreeBytes, subtreeMatch, toString`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### PARAMETER_PROPERTY

    public static final ChildPropertyDescriptor PARAMETER_PROPERTY

  The "parameter" structural property of this node type.

  Since:
    3.0

### EXPRESSION_PROPERTY

    public static final ChildPropertyDescriptor EXPRESSION_PROPERTY

  The "expression" structural property of this node type.

  Since:
    3.0

### BODY_PROPERTY

    public static final ChildPropertyDescriptor BODY_PROPERTY

  The "body" structural property of this node type.

  Since:
    3.0

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 the `AST.JLS*` constants
  Returns:
    a list of property descriptors (element type: `StructuralPropertyDescriptor`)
  Since:
    3.0

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

### resolveBinding

    public IVariableBinding resolveBinding()

  Resolves and returns the binding for the loop variable of this enhanced for statement.

  Note that bindings are generally unavailable unless requested when the AST is being built.

  Returns:
    the binding, or `null` if the binding cannot be resolved

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse JDT Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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