Package org.codehaus.janino

# Class Java.ForEachStatement

java.lang.Object
org.codehaus.janino.Java.Located
org.codehaus.janino.Java.Statement
org.codehaus.janino.Java.BreakableStatement
org.codehaus.janino.Java.ContinuableStatement
org.codehaus.janino.Java.ForEachStatement

All Implemented Interfaces:
  `Java.BlockStatement`, `Java.Locatable`, `Java.Scope`

Enclosing class:
  `Java`

public static final class Java.ForEachStatement extends Java.ContinuableStatement
Representation of a JLS7 14.14.2 "enhanced FOR statement".

## Field Summary

Fields
Modifier and Type
Field
Description
`final Java.FunctionDeclarator.FormalParameter`
`currentElement`
The "current element local variable declaration" part of the "enhanced FOR statement".
`final Java.Rvalue`
`expression`
The "expression" part of the "enhanced FOR statement".

### Fields inherited from class org.codehaus.janino.Java.ContinuableStatement

`body, whereToContinue`

### Fields inherited from class org.codehaus.janino.Java.Statement

`localVariables`

### Fields inherited from class org.codehaus.janino.Java.Located

`NOWHERE`

## Constructor Summary

Constructors
Constructor
Description
`ForEachStatement(Location location, Java.FunctionDeclarator.FormalParameter currentElement, Java.Rvalue expression, Java.BlockStatement body)`

## Method Summary

Modifier and Type
Method
Description
`<R, EX extends Throwable>
R`
`accept(Visitor.BlockStatementVisitor<R,EX> visitor)`
Invokes the "`visit...()`" method of `Visitor.BlockStatementVisitor` for the concrete `Java.BlockStatement` type.
`String`
`toString()`

### Methods inherited from class org.codehaus.janino.Java.Statement

`findLocalVariable, getEnclosingScope, setEnclosingScope`

### Methods inherited from class org.codehaus.janino.Java.Located

`getLocation, throwCompileException`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface org.codehaus.janino.Java.Locatable

`getLocation, throwCompileException`

## Field Details

### currentElement

public final Java.FunctionDeclarator.FormalParameter currentElement
The "current element local variable declaration" part of the "enhanced FOR statement".

### expression

public final Java.Rvalue expression
The "expression" part of the "enhanced FOR statement".

## Constructor Details

### ForEachStatement

public ForEachStatement(Location location, Java.FunctionDeclarator.FormalParameter currentElement, Java.Rvalue expression, Java.BlockStatement body)

## Method Details

### toString

public String toString()

Overrides:
  `toString` in class `Object`

### accept

@Nullable public <R, EX extends Throwable> R accept(Visitor.BlockStatementVisitor<R,EX> visitor) throws EX
Description copied from interface: `Java.BlockStatement`
Invokes the "`visit...()`" method of `Visitor.BlockStatementVisitor` for the concrete `Java.BlockStatement` type.

Throws:
  `EX`