Class SwitchExpression


public class SwitchExpression extends Expression
Switch expression AST node type (added in JEP 325).
 SwitchExpression:
                switch ( Expression )
                        { { SwitchCase | Statement } }
 SwitchCase:
                case [ Expression { , Expression } ]  { : | ->}
                default { : | ->}
 
SwitchCase nodes are treated as a kind of Statement.
Since:
3.22
  • Field Details

    • EXPRESSION_PROPERTY

      public static final ChildPropertyDescriptor EXPRESSION_PROPERTY
      The "expression" structural property of this node type (child type: Expression).
      Since:
      3.22
    • STATEMENTS_PROPERTY

      public static final ChildListPropertyDescriptor STATEMENTS_PROPERTY
      The "statements" structural property of this node type (element type: Statement).
      Since:
      3.22
  • Method Details

    • propertyDescriptors

      public static List propertyDescriptors(int apiLevel)
      Returns a list of structural property descriptors for this node type. Clients must not modify the result.
      Parameters:
      apiLevel - the API level; one of the AST.JLS* constants
      Returns:
      a list of property descriptors (element type: StructuralPropertyDescriptor)
      Since:
      3.22
    • getExpression

      public Expression getExpression()
      Returns the expression of this switch statement.
      Returns:
      the expression node
      Since:
      3.22
    • setExpression

      public void setExpression(Expression expression)
      Sets the expression of this switch statement.
      Parameters:
      expression - the new expression node
      Throws:
      IllegalArgumentException - if:
      • the node belongs to a different AST
      • the node already has a parent
      • a cycle in would be created
      Since:
      3.22
    • statements

      public List statements()
      Returns the live ordered list of statements for this switch statement. Within this list, SwitchCase nodes mark the start of the switch groups.
      Returns:
      the live list of statement nodes (element type: Statement)
      Since:
      3.22