Package org.openrewrite.csharp.tree
Class Cs.SwitchSection
java.lang.Object
org.openrewrite.csharp.tree.Cs.SwitchSection
- All Implemented Interfaces:
Cs,org.openrewrite.java.tree.J,org.openrewrite.java.tree.Statement,org.openrewrite.Tree
- Enclosing interface:
- Cs
public static final class Cs.SwitchSection
extends Object
implements Cs, org.openrewrite.java.tree.Statement
Represents a switch statement section containing one or more case labels followed by a list of statements.
For example:
switch(value) {
case 1: // single case label
case 2: // multiple case labels
Console.WriteLine("1 or 2");
break;
case int n when n > 0: // pattern case with when clause
Console.WriteLine("positive");
break;
case Person { Age: > 18 }: // recursive pattern
Console.WriteLine("adult");
break;
default: // default label
Console.WriteLine("default");
break;
}
-
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.StatementList<org.openrewrite.java.tree.Statement>withStatements(List<org.openrewrite.java.tree.Statement> statements) 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.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
-
SwitchSection
public SwitchSection()
-
-
Method Details
-
getStatements
-
withStatements
-
acceptCSharp
- Specified by:
acceptCSharpin interfaceCs
-
getCoordinates
public org.openrewrite.java.tree.CoordinateBuilder.Statement getCoordinates()- Specified by:
getCoordinatesin interfaceorg.openrewrite.java.tree.Statement
-
getPadding
-