Package org.openrewrite.csharp.tree
Class Cs.CasePatternSwitchLabel
java.lang.Object
org.openrewrite.csharp.tree.Cs.CasePatternSwitchLabel
- All Implemented Interfaces:
Cs,Cs.SwitchLabel,org.openrewrite.java.tree.Expression,org.openrewrite.java.tree.J,org.openrewrite.Tree
- Enclosing interface:
- Cs
Represents a pattern-based case label in a switch statement, optionally including a when clause.
For example:
switch(obj) {
case int n when n > 0:
case string s when s.Length > 0:
case [] when IsValid():
case Person { Age: > 18 }:
case not null:
case > 100:
}
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from interface org.openrewrite.csharp.tree.Cs
Cs.AliasQualifiedName, Cs.AllowsConstraint, Cs.AllowsConstraintClause, Cs.AnnotatedStatement, Cs.Argument, Cs.ArrayRankSpecifier, Cs.ArrayType, Cs.AssignmentOperation, Cs.AttributeList, Cs.AwaitExpression, Cs.Binary, Cs.BinaryPattern, Cs.BlockScopeNamespaceDeclaration, Cs.CasePatternSwitchLabel, Cs.CheckedStatement, Cs.ClassDeclaration, Cs.ClassOrStructConstraint, Cs.CollectionExpression, Cs.CompilationUnit, Cs.ConstantPattern, Cs.Constructor, Cs.ConstructorConstraint, Cs.ConstructorInitializer, Cs.ConversionOperatorDeclaration, Cs.DeclarationExpression, Cs.DefaultConstraint, Cs.DefaultExpression, Cs.DefaultSwitchLabel, Cs.DelegateDeclaration, Cs.DestructorDeclaration, Cs.DiscardPattern, Cs.DiscardVariableDesignation, Cs.EnumDeclaration, Cs.EnumMemberDeclaration, Cs.ExpressionStatement, Cs.ExternAlias, Cs.FileScopeNamespaceDeclaration, Cs.FixedStatement, Cs.ForEachVariableLoop, Cs.FromClause, Cs.GroupClause, Cs.ImplicitElementAccess, Cs.IndexerDeclaration, Cs.InitializerExpression, Cs.InterpolatedString, Cs.Interpolation, Cs.IsPattern, Cs.JoinClause, Cs.JoinIntoClause, Cs.Keyword, Cs.Lambda, Cs.LetClause, Cs.ListPattern, Cs.LockStatement, Cs.MethodDeclaration, Cs.NewClass, Cs.NullSafeExpression, Cs.OrderByClause, Cs.Ordering, Cs.ParenthesizedPattern, Cs.ParenthesizedVariableDesignation, Cs.Pattern, Cs.PositionalPatternClause, Cs.PropertyDeclaration, Cs.PropertyPatternClause, Cs.QueryBody, Cs.QueryClause, Cs.QueryContinuation, Cs.QueryExpression, Cs.RangeExpression, Cs.RecursivePattern, Cs.RefStructConstraint, Cs.RelationalPattern, Cs.SelectClause, Cs.SelectOrGroupClause, Cs.SingleVariableDesignation, Cs.SlicePattern, Cs.StatementExpression, Cs.Subpattern, Cs.SwitchExpression, Cs.SwitchExpressionArm, Cs.SwitchLabel, Cs.SwitchSection, Cs.SwitchStatement, Cs.TupleElement, Cs.TupleExpression, Cs.TupleType, Cs.TypeConstraint, Cs.TypeParameter, Cs.TypeParameterConstraint, Cs.TypeParameterConstraintClause, Cs.TypePattern, Cs.Unary, Cs.UnaryPattern, Cs.UnsafeStatement, Cs.UsingDirective, Cs.UsingStatement, Cs.VariableDesignation, Cs.VarPattern, Cs.WhereClause, Cs.YieldNested classes/interfaces inherited from interface org.openrewrite.java.tree.J
org.openrewrite.java.tree.J.AnnotatedType, org.openrewrite.java.tree.J.Annotation, org.openrewrite.java.tree.J.ArrayAccess, org.openrewrite.java.tree.J.ArrayDimension, org.openrewrite.java.tree.J.ArrayType, org.openrewrite.java.tree.J.Assert, org.openrewrite.java.tree.J.Assignment, org.openrewrite.java.tree.J.AssignmentOperation, org.openrewrite.java.tree.J.Binary, org.openrewrite.java.tree.J.Block, org.openrewrite.java.tree.J.Break, org.openrewrite.java.tree.J.Case, org.openrewrite.java.tree.J.ClassDeclaration, org.openrewrite.java.tree.J.CompilationUnit, org.openrewrite.java.tree.J.Continue, org.openrewrite.java.tree.J.ControlParentheses<J2 extends org.openrewrite.java.tree.J>, org.openrewrite.java.tree.J.DoWhileLoop, org.openrewrite.java.tree.J.Empty, org.openrewrite.java.tree.J.EnumValue, org.openrewrite.java.tree.J.EnumValueSet, org.openrewrite.java.tree.J.FieldAccess, org.openrewrite.java.tree.J.ForEachLoop, org.openrewrite.java.tree.J.ForLoop, org.openrewrite.java.tree.J.Identifier, org.openrewrite.java.tree.J.If, org.openrewrite.java.tree.J.Import, org.openrewrite.java.tree.J.InstanceOf, org.openrewrite.java.tree.J.IntersectionType, org.openrewrite.java.tree.J.Label, org.openrewrite.java.tree.J.Lambda, org.openrewrite.java.tree.J.Literal, org.openrewrite.java.tree.J.MemberReference, org.openrewrite.java.tree.J.MethodDeclaration, org.openrewrite.java.tree.J.MethodInvocation, org.openrewrite.java.tree.J.Modifier, org.openrewrite.java.tree.J.MultiCatch, org.openrewrite.java.tree.J.NewArray, org.openrewrite.java.tree.J.NewClass, org.openrewrite.java.tree.J.NullableType, org.openrewrite.java.tree.J.Package, org.openrewrite.java.tree.J.ParameterizedType, org.openrewrite.java.tree.J.Parentheses<J2 extends org.openrewrite.java.tree.J>, org.openrewrite.java.tree.J.ParenthesizedTypeTree, org.openrewrite.java.tree.J.Primitive, org.openrewrite.java.tree.J.Return, org.openrewrite.java.tree.J.Switch, org.openrewrite.java.tree.J.SwitchExpression, org.openrewrite.java.tree.J.Synchronized, org.openrewrite.java.tree.J.Ternary, org.openrewrite.java.tree.J.Throw, org.openrewrite.java.tree.J.Try, org.openrewrite.java.tree.J.TypeCast, org.openrewrite.java.tree.J.TypeParameter, org.openrewrite.java.tree.J.TypeParameters, org.openrewrite.java.tree.J.Unary, org.openrewrite.java.tree.J.Unknown, org.openrewrite.java.tree.J.VariableDeclarations, org.openrewrite.java.tree.J.WhileLoop, org.openrewrite.java.tree.J.Wildcard, org.openrewrite.java.tree.J.Yield -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription<P> org.openrewrite.java.tree.JacceptCSharp(CSharpVisitor<P> v, P p) org.openrewrite.java.tree.CoordinateBuilder.Expression@Nullable org.openrewrite.java.tree.JavaTypegetType()@Nullable org.openrewrite.java.tree.Expression<T extends org.openrewrite.java.tree.J>
TwithType(@Nullable org.openrewrite.java.tree.JavaType type) withWhenClause(@Nullable org.openrewrite.java.tree.Expression whenClause) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.openrewrite.csharp.tree.Cs
accept, isAcceptableMethods inherited from interface org.openrewrite.java.tree.Expression
getSideEffects, unwrapMethods inherited from interface org.openrewrite.java.tree.J
acceptJava, getComments, getPrefix, print, printTrimmed, withComments, withPrefixMethods inherited from interface org.openrewrite.Tree
cast, getId, getMarkers, isScope, print, print, print, printer, printTrimmed, printTrimmed, printTrimmed, withId, withMarkers
-
Constructor Details
-
CasePatternSwitchLabel
public CasePatternSwitchLabel()
-
-
Method Details
-
getWhenClause
public @Nullable org.openrewrite.java.tree.Expression getWhenClause() -
withWhenClause
public Cs.CasePatternSwitchLabel withWhenClause(@Nullable org.openrewrite.java.tree.Expression whenClause) -
acceptCSharp
- Specified by:
acceptCSharpin interfaceCs
-
getPadding
-
getType
public @Nullable org.openrewrite.java.tree.JavaType getType()- Specified by:
getTypein interfaceorg.openrewrite.java.tree.Expression
-
withType
public <T extends org.openrewrite.java.tree.J> T withType(@Nullable org.openrewrite.java.tree.JavaType type) - Specified by:
withTypein interfaceorg.openrewrite.java.tree.Expression
-
getCoordinates
public org.openrewrite.java.tree.CoordinateBuilder.Expression getCoordinates()- Specified by:
getCoordinatesin interfaceorg.openrewrite.java.tree.Expression
-