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.

- - Inherited fields
    Fields inherited from class | Fields
    --- | ---
    `interface Statement` | `CLOSE_CURRENT_RESULT, KEEP_CURRENT_RESULT, CLOSE_ALL_RESULTS, SUCCESS_NO_INFO, EXECUTE_FAILED, RETURN_GENERATED_KEYS, NO_GENERATED_KEYS`

  - ### Constructor Summary

    Constructors
    Constructor and description
    `BlockStatement()`
    `BlockStatement(List<Statement> statements, VariableScope scope)` Creates a BlockStatement with a scope and children statements.
    `BlockStatement(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
    --- | ---
    `interface Statement` | `execute, execute, execute, execute, close, cancel, getConnection, isClosed, getLargeUpdateCount, isCloseOnCompletion, enquoteNCharLiteral, setEscapeProcessing, getResultSetHoldability, getResultSetConcurrency, setQueryTimeout, setFetchSize, getFetchSize, getFetchDirection, getWarnings, clearWarnings, setFetchDirection, getResultSet, setMaxFieldSize, executeQuery, getUpdateCount, setMaxRows, getMoreResults, getMoreResults, getMaxFieldSize, getMaxRows, setCursorName, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getQueryTimeout, getResultSetType, enquoteLiteral, isSimpleIdentifier, isPoolable, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, clearBatch, setLargeMaxRows, executeLargeBatch, getGeneratedKeys, enquoteIdentifier, setPoolable, getLargeMaxRows, addBatch, closeOnCompletion, executeBatch, unwrap, isWrapperFor`

- - ### Constructor Detail

    - #### public BlockStatement()

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

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

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