Record Class StatementDef.Switch
java.lang.Object
java.lang.Record
io.micronaut.sourcegen.model.StatementDef.Switch
- Record Components:
expression- The switch expressiontype- The switch typecases- The casesdefaultCase- The default case
- All Implemented Interfaces:
StatementDef
- Enclosing interface:
StatementDef
public static record StatementDef.Switch(ExpressionDef expression, TypeDef type, Map<ExpressionDef.Constant, StatementDef> cases, @Nullable StatementDef defaultCase)
extends Record
implements StatementDef
The switch statement.
Note: null constant or null value represents a default case.
- Since:
- 1.2
- Author:
- Denis Stepanov
-
Nested Class Summary
Nested classes/interfaces inherited from interface StatementDef
StatementDef.Assign, StatementDef.DefineAndAssign, StatementDef.If, StatementDef.IfElse, StatementDef.Multi, StatementDef.PutField, StatementDef.PutStaticField, StatementDef.Return, StatementDef.Switch, StatementDef.Synchronized, StatementDef.Throw, StatementDef.Try, StatementDef.While -
Constructor Summary
ConstructorsConstructorDescriptionSwitch(ExpressionDef expression, TypeDef type, Map<ExpressionDef.Constant, StatementDef> cases, @Nullable StatementDef defaultCase) Creates an instance of aSwitchrecord class. -
Method Summary
Modifier and TypeMethodDescriptioncases()Returns the value of thecasesrecord component.@Nullable StatementDefReturns the value of thedefaultCaserecord component.final booleanIndicates whether some other object is "equal to" this one.Returns the value of theexpressionrecord component.final inthashCode()Returns a hash code value for this object.Stream<? extends ExpressionDef> Stream of nested expressions included in this statement.final StringtoString()Returns a string representation of this record class.type()Returns the value of thetyperecord component.Methods inherited from interface StatementDef
after, doTry, flatten
-
Constructor Details
-
Switch
public Switch(ExpressionDef expression, TypeDef type, Map<ExpressionDef.Constant, StatementDef> cases, @Nullable StatementDef defaultCase) Creates an instance of aSwitchrecord class.- Parameters:
expression- the value for theexpressionrecord componenttype- the value for thetyperecord componentcases- the value for thecasesrecord componentdefaultCase- the value for thedefaultCaserecord component
-
-
Method Details
-
nestedExpressionsStream
Description copied from interface:StatementDefStream of nested expressions included in this statement.- Specified by:
nestedExpressionsStreamin interfaceStatementDef- Returns:
- all the expressions
-
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
expression
Returns the value of theexpressionrecord component.- Returns:
- the value of the
expressionrecord component
-
type
-
cases
-
defaultCase
Returns the value of thedefaultCaserecord component.- Returns:
- the value of the
defaultCaserecord component
-