Package icyllis.arc3d.compiler.tree

# Class BlockStatement

java.lang.Object
icyllis.arc3d.compiler.tree.Node
icyllis.arc3d.compiler.tree.Statement
icyllis.arc3d.compiler.tree.BlockStatement

public final class BlockStatement extends Statement
A block of multiple statements functioning as a single statement.

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class icyllis.arc3d.compiler.tree.Node

  `Node.ElementKind, Node.ExpressionKind, Node.StatementKind, Node.SymbolKind`

- ## Field Summary

  ### Fields inherited from class icyllis.arc3d.compiler.tree.Node

  `mPosition`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `BlockStatement(int position, List<Statement> statements, boolean scoped)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `accept(TreeVisitor visitor)`
  Visit this AST with a given visitor.
  `Node.StatementKind`
  `getKind()`
  `List<Statement>`
  `getStatements()`
  `boolean`
  `isEmpty()`
  `boolean`
  `isScoped()`
  `static Statement`
  `make(int pos, List<Statement> statements, boolean scoped)`
  `static BlockStatement`
  `makeBlock(int pos, List<Statement> statements)`
  `static Statement`
  `makeCompound(Statement before, Statement after)`
  `void`
  `setScoped(boolean scoped)`
  `void`
  `setStatements(List<Statement> statements)`
  `String`
  `toString()`

  ### Methods inherited from class icyllis.arc3d.compiler.tree.Node

  `getEndOffset, getStartOffset`

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

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

- ## Constructor Details

  - ### BlockStatement

    public BlockStatement(int position, List<Statement> statements, boolean scoped)

- ## Method Details

  - ### make

    public static Statement make(int pos, List<Statement> statements, boolean scoped)

  - ### makeBlock

    public static BlockStatement makeBlock(int pos, List<Statement> statements)

  - ### makeCompound

    public static Statement makeCompound(Statement before, Statement after)

  - ### getKind

    public Node.StatementKind getKind()
    Specified by:
      `getKind` in class `Statement`
    See Also:
      - `Node.StatementKind`

  - ### accept

    public boolean accept(@Nonnull TreeVisitor visitor)
    Description copied from class: `Node`
    Visit this AST with a given visitor.
    Specified by:
      `accept` in class `Node`
    Returns:
      true to stop recursion and propagate true up the stack, false to continue

  - ### isEmpty

    public boolean isEmpty()
    Overrides:
      `isEmpty` in class `Statement`

  - ### getStatements

    public List<Statement> getStatements()

  - ### setStatements

    public void setStatements(List<Statement> statements)

  - ### isScoped

    public boolean isScoped()

  - ### setScoped

    public void setScoped(boolean scoped)

  - ### toString

    @Nonnull public String toString()
    Specified by:
      `toString` in class `Node`
    Returns:
      a string representation of this AST node