Interface ChooseStatementNode

All Superinterfaces:
ASTNode, BlockItemNode, Iterable<StatementNode>, SequenceNode<StatementNode>, StatementNode

public interface ChooseStatementNode extends StatementNode, SequenceNode<StatementNode>
A "choose" statement has the form "choose { s1 ... sn }", where each si is a statement. It represents nondeterministic choice. Typically the si is a "when" statement, but every statement has a guard, whether implicit or explicit. Basically wraps the sequence of statements s1, ..., sn.
  • Method Details

    • getDefaultCase

      LabeledStatementNode getDefaultCase()
      The default case is just some meta-data associated to the node, and is totally independent of the methods to create and add the children.
      Parameters:
      statement -
    • setDefaultCase

      void setDefaultCase(LabeledStatementNode statement)
      The default case is just some meta-data associated to the node, and is totally independent of the methods to create and add the children.
      Parameters:
      statement -
    • copy

      Description copied from interface: ASTNode
      Returns a deep copy of this AST node. The node and all of its descendants will be cloned. The cloning does not copy analysis or attribute information.
      Specified by:
      copy in interface ASTNode
      Specified by:
      copy in interface BlockItemNode
      Specified by:
      copy in interface SequenceNode<StatementNode>
      Specified by:
      copy in interface StatementNode
      Returns:
      deep copy of this node