Module jdk.compiler

Interface CaseTree

All Superinterfaces:
Tree

public interface CaseTree extends Tree
A tree node for a case in a switch statement or expression. For example:
   case expression :
       statements

   default :
       statements
 
See Java Language Specification:
14.11 The switch Statement
Since:
1.6
  • Method Details

    • getExpression

      @Deprecated ExpressionTree getExpression()
      Deprecated.
      Please use getExpressions().
      Returns the expression for the case, or null if this is the default case. If this case has multiple labels, returns the first label.
      Returns:
      the expression for the case, or null
    • getExpressions

      List<? extends ExpressionTree> getExpressions()
      Returns the labels for this case. For default case, returns an empty list.
      Returns:
      labels for this case
      Since:
      12
    • getLabels

      List<? extends CaseLabelTree> getLabels()
      Returns the labels for this case. For default case return a list with a single element, DefaultCaseLabelTree.
      Returns:
      labels for this case
      Since:
      21
    • getGuard

      ExpressionTree getGuard()
      The guard for the case.
      Returns:
      the guard
      Since:
      21
    • getStatements

      List<? extends StatementTree> getStatements()
      For case with kind CaseTree.CaseKind.STATEMENT, returns the statements labeled by the case. Returns null for case with kind CaseTree.CaseKind.RULE.
      Returns:
      the statements labeled by the case or null
    • getBody

      default Tree getBody()
      For case with kind CaseTree.CaseKind.RULE, returns the statement or expression after the arrow. Returns null for case with kind CaseTree.CaseKind.STATEMENT.
      Returns:
      case value or null
      Since:
      12
    • getCaseKind

      default CaseTree.CaseKind getCaseKind()
      Returns the kind of this case.
      Returns:
      the kind of this case
      Since:
      12