3 types derived from SwitchLabelSyntax
Microsoft.CodeAnalysis.CSharp (3)
_generated\2\Syntax.xml.Syntax.Generated.cs (3)
8699public sealed partial class CasePatternSwitchLabelSyntax : SwitchLabelSyntax 8767public sealed partial class CaseSwitchLabelSyntax : SwitchLabelSyntax 8819public sealed partial class DefaultSwitchLabelSyntax : SwitchLabelSyntax
76 references to SwitchLabelSyntax
Microsoft.CodeAnalysis.CSharp (32)
_generated\0\Syntax.xml.Main.Generated.cs (1)
4605public static SwitchSectionSyntax SwitchSection(SyntaxList<SwitchLabelSyntax> labels, SyntaxList<StatementSyntax> statements)
_generated\2\Syntax.xml.Syntax.Generated.cs (15)
8624public SyntaxList<SwitchLabelSyntax> Labels => new SyntaxList<SwitchLabelSyntax>(GetRed(ref this.labels, 0)); 8650public SwitchSectionSyntax Update(SyntaxList<SwitchLabelSyntax> labels, SyntaxList<StatementSyntax> statements) 8662public SwitchSectionSyntax WithLabels(SyntaxList<SwitchLabelSyntax> labels) => Update(labels, this.Statements); 8665public SwitchSectionSyntax AddLabels(params SwitchLabelSyntax[] items) => WithLabels(this.Labels.AddRange(items)); 8681public SwitchLabelSyntax WithKeyword(SyntaxToken keyword) => WithKeywordCore(keyword); 8682internal abstract SwitchLabelSyntax WithKeywordCore(SyntaxToken keyword); 8688public SwitchLabelSyntax WithColonToken(SyntaxToken colonToken) => WithColonTokenCore(colonToken); 8689internal abstract SwitchLabelSyntax WithColonTokenCore(SyntaxToken colonToken); 8752internal override SwitchLabelSyntax WithKeywordCore(SyntaxToken keyword) => WithKeyword(keyword); 8756internal override SwitchLabelSyntax WithColonTokenCore(SyntaxToken colonToken) => WithColonToken(colonToken); 8805internal override SwitchLabelSyntax WithKeywordCore(SyntaxToken keyword) => WithKeyword(keyword); 8808internal override SwitchLabelSyntax WithColonTokenCore(SyntaxToken colonToken) => WithColonToken(colonToken); 8851internal override SwitchLabelSyntax WithKeywordCore(SyntaxToken keyword) => WithKeyword(keyword); 8853internal override SwitchLabelSyntax WithColonTokenCore(SyntaxToken colonToken) => WithColonToken(colonToken);
Binder\ExpressionVariableFinder.cs (1)
139foreach (SwitchLabelSyntax label in node.Labels)
Binder\LocalBinderFactory.cs (1)
749foreach (SwitchLabelSyntax label in node.Labels)
Binder\SwitchBinder.cs (2)
200private void BuildSwitchLabels(SyntaxList<SwitchLabelSyntax> labelsSyntax, Binder sectionBinder, ArrayBuilder<LabelSymbol> labels, BindingDiagnosticBag tempDiagnosticBag) 203foreach (var labelSyntax in labelsSyntax)
Binder\SwitchBinder_Patterns.cs (2)
202foreach (SwitchLabelSyntax labelSyntax in node.Labels) 239SwitchLabelSyntax node,
Compilation\CSharpSemanticModel.cs (2)
3194public abstract ILabelSymbol GetDeclaredSymbol(SwitchLabelSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken)); 5167return this.GetDeclaredSymbol((SwitchLabelSyntax)node, cancellationToken);
Compilation\MemberSemanticModel.cs (1)
778public override ILabelSymbol GetDeclaredSymbol(SwitchLabelSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken))
Compilation\SpeculativeSemanticModelWithMemberModel.cs (1)
350public override ILabelSymbol GetDeclaredSymbol(SwitchLabelSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken))
Compilation\SyntaxTreeSemanticModel.cs (1)
1918public override ILabelSymbol GetDeclaredSymbol(SwitchLabelSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken))
CSharpExtensions.cs (1)
1559public static ILabelSymbol? GetDeclaredSymbol(this SemanticModel? semanticModel, SwitchLabelSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken))
FlowAnalysis\AbstractFlowPass_Switch.cs (1)
108foreach (var label in sectionSyntax.Labels)
Lowering\LocalRewriter\LocalRewriter_BasePatternSwitchLocalRewriter.cs (1)
30SyntaxNode? sectionSyntax = whenClauseSyntax is SwitchLabelSyntax l ? l.Parent : whenClauseSyntax;
Symbols\Source\SourceLabelSymbol.cs (1)
100node = _identifierNodeOrToken.AsNode()!.FirstAncestorOrSelf<SwitchLabelSyntax>();
Syntax\SyntaxNormalizer.cs (1)
286if (currentToken.Parent is LabeledStatementSyntax || currentToken.Parent is SwitchLabelSyntax)
Microsoft.CodeAnalysis.CSharp.CodeStyle (5)
src\roslyn\src\Analyzers\CSharp\Analyzers\ConvertSwitchStatementToExpression\ConvertSwitchStatementToExpressionDiagnosticAnalyzer.Analyzer.cs (2)
133private bool CanConvertLabelsToArms(SyntaxList<SwitchLabelSyntax> labels) 163foreach (var label in labels)
src\roslyn\src\Analyzers\CSharp\Analyzers\ConvertSwitchStatementToExpression\ConvertSwitchStatementToExpressionHelpers.cs (1)
11public static bool IsDefaultSwitchLabel(SwitchLabelSyntax node)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\Rules\ElasticTriviaFormattingRule.cs (1)
365if (previousToken.Parent is LabeledStatementSyntax or SwitchLabelSyntax)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\FormattingRangeHelper.cs (1)
389token.Parent is SwitchLabelSyntax switchLabel &&
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (8)
src\roslyn\src\Analyzers\CSharp\CodeFixes\ConvertSwitchStatementToExpression\ConvertSwitchStatementToExpressionCodeFixProvider.Rewriter.cs (2)
130private static PatternSyntax GetPattern(SyntaxList<SwitchLabelSyntax> switchLabels, out WhenClauseSyntax? whenClause) 158private static PatternSyntax GetPattern(SwitchLabelSyntax switchLabel, out WhenClauseSyntax? whenClause)
src\roslyn\src\Analyzers\CSharp\CodeFixes\RemoveUnusedParametersAndValues\CSharpRemoveUnusedValuesCodeFixProvider.cs (1)
30ForEachStatementSyntax, SwitchSectionSyntax, SwitchLabelSyntax, CatchClauseSyntax, CatchClauseSyntax>
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Formatting\CSharpSyntaxFormattingService.cs (1)
63if (token.IsKind(SyntaxKind.ColonToken) && !token.Parent.IsKind(SyntaxKind.LabeledStatement) && token.Parent is not SwitchLabelSyntax)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Indentation\CSharpIndentationService.Indenter.cs (1)
275if (nonTerminalNode is SwitchLabelSyntax)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (3)
182SwitchLabelSyntax switchLabel => InferTypeInSwitchLabel(switchLabel), 247SwitchLabelSyntax switchLabel => InferTypeInSwitchLabel(switchLabel, token), 2187SwitchLabelSyntax switchLabel, SyntaxToken? previousToken = null)
Microsoft.CodeAnalysis.CSharp.Features (14)
Completion\KeywordRecommenders\WhenKeywordRecommender.cs (2)
37var switchLabel = context.TargetToken.GetAncestor<SwitchLabelSyntax>();
EditAndContinue\BreakpointSpans.cs (3)
288return TryCreateSpanForSwitchLabel((SwitchLabelSyntax)node, position); 293? TryCreateSpanForSwitchLabel((SwitchLabelSyntax)node, position) 554private static TextSpan? TryCreateSpanForSwitchLabel(SwitchLabelSyntax switchLabel, int position)
EditAndContinue\CSharpEditAndContinueAnalyzer.cs (2)
2915private static bool AreLabelsEquivalent(SwitchLabelSyntax oldLabel, SwitchLabelSyntax newLabel)
Highlighting\KeywordHighlighters\SwitchStatementHighlighter.cs (1)
43foreach (var label in switchSection.Labels)
src\roslyn\src\Analyzers\CSharp\Analyzers\ConvertSwitchStatementToExpression\ConvertSwitchStatementToExpressionDiagnosticAnalyzer.Analyzer.cs (2)
133private bool CanConvertLabelsToArms(SyntaxList<SwitchLabelSyntax> labels) 163foreach (var label in labels)
src\roslyn\src\Analyzers\CSharp\Analyzers\ConvertSwitchStatementToExpression\ConvertSwitchStatementToExpressionHelpers.cs (1)
11public static bool IsDefaultSwitchLabel(SwitchLabelSyntax node)
src\roslyn\src\Analyzers\CSharp\CodeFixes\ConvertSwitchStatementToExpression\ConvertSwitchStatementToExpressionCodeFixProvider.Rewriter.cs (2)
130private static PatternSyntax GetPattern(SyntaxList<SwitchLabelSyntax> switchLabels, out WhenClauseSyntax? whenClause) 158private static PatternSyntax GetPattern(SwitchLabelSyntax switchLabel, out WhenClauseSyntax? whenClause)
src\roslyn\src\Analyzers\CSharp\CodeFixes\RemoveUnusedParametersAndValues\CSharpRemoveUnusedValuesCodeFixProvider.cs (1)
30ForEachStatementSyntax, SwitchSectionSyntax, SwitchLabelSyntax, CatchClauseSyntax, CatchClauseSyntax>
Microsoft.CodeAnalysis.CSharp.Workspaces (10)
CodeGeneration\CSharpSyntaxGenerator.cs (3)
3622[.. labels.Cast<SwitchLabelSyntax>()], 3629private static SyntaxList<SwitchLabelSyntax> AsSwitchLabels(IEnumerable<SyntaxNode> expressions) 3631var labels = default(SyntaxList<SwitchLabelSyntax>);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\Rules\ElasticTriviaFormattingRule.cs (1)
365if (previousToken.Parent is LabeledStatementSyntax or SwitchLabelSyntax)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\FormattingRangeHelper.cs (1)
389token.Parent is SwitchLabelSyntax switchLabel &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Formatting\CSharpSyntaxFormattingService.cs (1)
63if (token.IsKind(SyntaxKind.ColonToken) && !token.Parent.IsKind(SyntaxKind.LabeledStatement) && token.Parent is not SwitchLabelSyntax)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Indentation\CSharpIndentationService.Indenter.cs (1)
275if (nonTerminalNode is SwitchLabelSyntax)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (3)
182SwitchLabelSyntax switchLabel => InferTypeInSwitchLabel(switchLabel), 247SwitchLabelSyntax switchLabel => InferTypeInSwitchLabel(switchLabel, token), 2187SwitchLabelSyntax switchLabel, SyntaxToken? previousToken = null)
Roslyn.Diagnostics.CSharp.Analyzers (7)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\Rules\ElasticTriviaFormattingRule.cs (1)
365if (previousToken.Parent is LabeledStatementSyntax or SwitchLabelSyntax)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\FormattingRangeHelper.cs (1)
389token.Parent is SwitchLabelSyntax switchLabel &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Formatting\CSharpSyntaxFormattingService.cs (1)
63if (token.IsKind(SyntaxKind.ColonToken) && !token.Parent.IsKind(SyntaxKind.LabeledStatement) && token.Parent is not SwitchLabelSyntax)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Indentation\CSharpIndentationService.Indenter.cs (1)
275if (nonTerminalNode is SwitchLabelSyntax)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (3)
182SwitchLabelSyntax switchLabel => InferTypeInSwitchLabel(switchLabel), 247SwitchLabelSyntax switchLabel => InferTypeInSwitchLabel(switchLabel, token), 2187SwitchLabelSyntax switchLabel, SyntaxToken? previousToken = null)