Package: org.codehaus.groovy.ast.stmt

## [Java] Class BlockStatement

- org.codehaus.groovy.ast.stmt.BlockStatement

-     public class BlockStatement
      extends Statement

  A list of statements and a scope.

- - ### Constructor Summary

    Constructors
    Constructor and description
    `BlockStatement()`
    `BlockStatement(Statement[] statements, VariableScope scope)` Creates a BlockStatement with a scope and children statements.
    `BlockStatement(List<Statement> statements, VariableScope scope)` Creates a BlockStatement with a scope and children statements.

  - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `public void` | `addStatement(Statement statement)`
    `` | `public void` | `addStatements(List<Statement> listOfStatements)`
    `` | `public List<Statement>` | `getStatements()`
    `` | `public String` | `getText()`
    `` | `public VariableScope` | `getVariableScope()`
    `` | `public boolean` | `isEmpty()`
    `` | `public void` | `setVariableScope(VariableScope scope)`
    `` | `public String` | `toString()`
    `` | `public void` | `visit(GroovyCodeVisitor visitor)`

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class Statement` | `addStatementLabel, copyStatementLabels, getStatementLabel, getStatementLabels, isEmpty, setStatementLabel`
    `class ASTNode` | `copyNodeMetaData, getColumnNumber, getLastColumnNumber, getLastLineNumber, getLineNumber, getMetaDataMap, getText, setColumnNumber, setLastColumnNumber, setLastLineNumber, setLineNumber, setMetaDataMap, setSourcePosition, visit`

- - ### Constructor Detail

    - #### public BlockStatement()

    - #### public BlockStatement(Statement[] statements, VariableScope scope)

      Creates a BlockStatement with a scope and children statements.

      Parameters:
        `statements` - the statements, which cannot be null or an exception occurs. No reference to the array is held, so modifying the array later has no effect on this class.
        `scope` - the scope

    - #### public BlockStatement(List<Statement> statements, VariableScope scope)

      Creates a BlockStatement with a scope and children statements.

      Parameters:
        `statements` - the statements. Do not pass null. If you do, no exception will occur, but a NullPointerException will eventually occur later. Also, a reference to the list is kept, so modifying the List later does effect this class.
        `scope` - the scope

  - ### Method Detail

    - #### public void addStatement(Statement statement)

    - #### public void addStatements(List<Statement> listOfStatements)

    - #### public List<Statement> getStatements()

    - #### @Override
      public String getText()

    - #### public VariableScope getVariableScope()

    - #### @Override
      public boolean isEmpty()

    - #### public void setVariableScope(VariableScope scope)

    - #### @Override
      public String toString()

    - #### @Override
      public void visit(GroovyCodeVisitor visitor)