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, getResultSetConcurrency, enquoteNCharLiteral, getLargeUpdateCount, setEscapeProcessing, getResultSetHoldability, isCloseOnCompletion, getWarnings, clearWarnings, setFetchSize, getFetchDirection, getFetchSize, setFetchDirection, getResultSet, getMaxRows, executeBatch, setMaxFieldSize, setMaxRows, getMoreResults, getMoreResults, addBatch, clearBatch, setQueryTimeout, getGeneratedKeys, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getMaxFieldSize, executeQuery, getQueryTimeout, getUpdateCount, setCursorName, getResultSetType, isPoolable, enquoteLiteral, setPoolable, getLargeMaxRows, executeLargeBatch, enquoteIdentifier, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, isSimpleIdentifier, setLargeMaxRows, closeOnCompletion, 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)