Package org.codehaus.groovy.ast.stmt

# Class ForStatement

java.lang.Object
org.codehaus.groovy.ast.ASTNode
org.codehaus.groovy.ast.stmt.Statement
org.codehaus.groovy.ast.stmt.ForStatement

All Implemented Interfaces:
  `NodeMetaDataHandler`, `LoopingStatement`

public class ForStatement extends Statement implements LoopingStatement
Represents a for loop in Groovy.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final Parameter`
  `FOR_LOOP_DUMMY`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ForStatement(Parameter variable, Expression collectionExpression, Statement loopBlock)`
  `ForStatement(Parameter indexVariable, Parameter valueVariable, Expression collectionExpression, Statement loopBlock)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Expression`
  `getCollectionExpression()`
  `Parameter`
  `getIndexVariable()`
  `Statement`
  `getLoopBlock()`
  Gets the loop block.
  `Parameter`
  `getValueVariable()`
  `Parameter`
  `getVariable()`
  Deprecated.
  `VariableScope`
  `getVariableScope()`
  `ClassNode`
  `getVariableType()`
  Deprecated.
  `void`
  `setCollectionExpression(Expression collectionExpression)`
  `void`
  `setLoopBlock(Statement loopBlock)`
  Sets the loop block.
  `void`
  `setVariableScope(VariableScope scope)`
  `void`
  `visit(GroovyCodeVisitor visitor)`

  ### Methods inherited from class org.codehaus.groovy.ast.stmt.Statement

  `addStatementLabel, copyStatementLabels, getStatementLabel, getStatementLabels, isEmpty, setStatementLabel`

  ### Methods inherited from class org.codehaus.groovy.ast.ASTNode

  `copyNodeMetaData, getColumnNumber, getLastColumnNumber, getLastLineNumber, getLineNumber, getMetaDataMap, getText, setColumnNumber, setLastColumnNumber, setLastLineNumber, setLineNumber, setMetaDataMap, setSourcePosition`

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

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

  ### Methods inherited from interface org.codehaus.groovy.ast.NodeMetaDataHandler

  `copyNodeMetaData, getNodeMetaData, getNodeMetaData, getNodeMetaData, newMetaDataMap, putNodeMetaData, removeNodeMetaData, setNodeMetaData`

- ## Field Details

  - ### FOR_LOOP_DUMMY

    public static final Parameter FOR_LOOP_DUMMY

- ## Constructor Details

  - ### ForStatement

    public ForStatement(Parameter indexVariable, Parameter valueVariable, Expression collectionExpression, Statement loopBlock)
    Since:
      5.0.0

  - ### ForStatement

    public ForStatement(Parameter variable, Expression collectionExpression, Statement loopBlock)

- ## Method Details

  - ### setCollectionExpression

    public void setCollectionExpression(Expression collectionExpression)

  - ### setLoopBlock

    public void setLoopBlock(Statement loopBlock)
    Description copied from interface: `LoopingStatement`
    Sets the loop block.
    Specified by:
      `setLoopBlock` in interface `LoopingStatement`

  - ### getIndexVariable

    public Parameter getIndexVariable()
    Since:
      5.0.0

  - ### getValueVariable

    public Parameter getValueVariable()
    Since:
      5.0.0

  - ### getVariable

    @Deprecated(since="5.0.0") public Parameter getVariable()
    Deprecated.

  - ### getVariableType

    @Deprecated(since="5.0.0") public ClassNode getVariableType()
    Deprecated.

  - ### getCollectionExpression

    public Expression getCollectionExpression()

  - ### getLoopBlock

    public Statement getLoopBlock()
    Description copied from interface: `LoopingStatement`
    Gets the loop block.
    Specified by:
      `getLoopBlock` in interface `LoopingStatement`

  - ### getVariableScope

    public VariableScope getVariableScope()

  - ### setVariableScope

    public void setVariableScope(VariableScope scope)

  - ### visit

    public void visit(GroovyCodeVisitor visitor)
    Overrides:
      `visit` in class `ASTNode`