1 instantiation of SubpatternSyntax
Microsoft.CodeAnalysis.CSharp (1)
_generated\1\Syntax.xml.Internal.Generated.cs (1)
8924
internal override SyntaxNode CreateRed(SyntaxNode? parent, int position) => new CSharp.Syntax.
SubpatternSyntax
(this, parent, position);
97 references to SubpatternSyntax
Microsoft.CodeAnalysis.CSharp (34)
_generated\0\Syntax.xml.Main.Generated.cs (10)
305
public virtual TResult? VisitSubpattern(
SubpatternSyntax
node) => this.DefaultVisit(node);
1057
public virtual void VisitSubpattern(
SubpatternSyntax
node) => this.DefaultVisit(node);
1808
public override SyntaxNode? VisitSubpattern(
SubpatternSyntax
node)
3790
public static PositionalPatternClauseSyntax PositionalPatternClause(SyntaxToken openParenToken, SeparatedSyntaxList<
SubpatternSyntax
> subpatterns, SyntaxToken closeParenToken)
3798
public static PositionalPatternClauseSyntax PositionalPatternClause(SeparatedSyntaxList<
SubpatternSyntax
> subpatterns = default)
3802
public static PropertyPatternClauseSyntax PropertyPatternClause(SyntaxToken openBraceToken, SeparatedSyntaxList<
SubpatternSyntax
> subpatterns, SyntaxToken closeBraceToken)
3810
public static PropertyPatternClauseSyntax PropertyPatternClause(SeparatedSyntaxList<
SubpatternSyntax
> subpatterns = default)
3814
public static
SubpatternSyntax
Subpattern(BaseExpressionColonSyntax? expressionColon, PatternSyntax pattern)
3817
return (
SubpatternSyntax
)Syntax.InternalSyntax.SyntaxFactory.Subpattern(expressionColon == null ? null : (Syntax.InternalSyntax.BaseExpressionColonSyntax)expressionColon.Green, (Syntax.InternalSyntax.PatternSyntax)pattern.Green).CreateRed();
3821
public static
SubpatternSyntax
Subpattern(PatternSyntax pattern)
_generated\2\Syntax.xml.Syntax.Generated.cs (16)
5441
public RecursivePatternSyntax AddPositionalPatternClauseSubpatterns(params
SubpatternSyntax
[] items)
5446
public RecursivePatternSyntax AddPropertyPatternClauseSubpatterns(params
SubpatternSyntax
[] items)
5470
public SeparatedSyntaxList<
SubpatternSyntax
> Subpatterns
5475
return red != null ? new SeparatedSyntaxList<
SubpatternSyntax
>(red, GetChildIndex(1)) : default;
5488
public PositionalPatternClauseSyntax Update(SyntaxToken openParenToken, SeparatedSyntaxList<
SubpatternSyntax
> subpatterns, SyntaxToken closeParenToken)
5501
public PositionalPatternClauseSyntax WithSubpatterns(SeparatedSyntaxList<
SubpatternSyntax
> subpatterns) => Update(this.OpenParenToken, subpatterns, this.CloseParenToken);
5504
public PositionalPatternClauseSyntax AddSubpatterns(params
SubpatternSyntax
[] items) => WithSubpatterns(this.Subpatterns.AddRange(items));
5524
public SeparatedSyntaxList<
SubpatternSyntax
> Subpatterns
5529
return red != null ? new SeparatedSyntaxList<
SubpatternSyntax
>(red, GetChildIndex(1)) : default;
5542
public PropertyPatternClauseSyntax Update(SyntaxToken openBraceToken, SeparatedSyntaxList<
SubpatternSyntax
> subpatterns, SyntaxToken closeBraceToken)
5555
public PropertyPatternClauseSyntax WithSubpatterns(SeparatedSyntaxList<
SubpatternSyntax
> subpatterns) => Update(this.OpenBraceToken, subpatterns, this.CloseBraceToken);
5558
public PropertyPatternClauseSyntax AddSubpatterns(params
SubpatternSyntax
[] items) => WithSubpatterns(this.Subpatterns.AddRange(items));
5600
public
SubpatternSyntax
Update(BaseExpressionColonSyntax? expressionColon, PatternSyntax pattern)
5604
var
newNode = SyntaxFactory.Subpattern(expressionColon, pattern);
5612
public
SubpatternSyntax
WithExpressionColon(BaseExpressionColonSyntax? expressionColon) => Update(expressionColon, this.Pattern);
5613
public
SubpatternSyntax
WithPattern(PatternSyntax pattern) => Update(this.ExpressionColon, pattern);
Binder\Binder_Patterns.cs (4)
1685
var
subPattern = node.Subpatterns[i];
1740
foreach (
var
subpatternSyntax in node.Subpatterns)
1781
var
subpatternSyntax = node.Subpatterns[i];
2128
foreach (
SubpatternSyntax
p in node.Subpatterns)
Binder\DecisionDagBuilder_CheckOrReachability.cs (1)
245
if (syntax.Parent is
SubpatternSyntax
subpatternSyntax
Syntax\SubpatternSyntax.cs (3)
13
public
SubpatternSyntax
WithNameColon(NameColonSyntax? nameColon)
16
public
SubpatternSyntax
Update(NameColonSyntax? nameColon, PatternSyntax pattern)
25
public static
SubpatternSyntax
Subpattern(NameColonSyntax? nameColon, PatternSyntax pattern)
Microsoft.CodeAnalysis.CSharp.CodeStyle (5)
src\roslyn\src\Analyzers\CSharp\Analyzers\SimplifyPropertyPattern\CSharpSimplifyPropertyPatternDiagnosticAnalyzer.cs (2)
58
var
subpattern = (
SubpatternSyntax
)syntaxContext.Node;
src\roslyn\src\Analyzers\CSharp\Analyzers\SimplifyPropertyPattern\SimplifyPropertyPatternHelpers.cs (2)
13
SubpatternSyntax
subpattern,
14
[NotNullWhen(true)] out
SubpatternSyntax
? innerSubpattern,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
771
if (node.Parent is
SubpatternSyntax
)
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (15)
src\roslyn\src\Analyzers\CSharp\CodeFixes\SimplifyPropertyPattern\CSharpSimplifyPropertyPatternCodeFixProvider.cs (8)
43
var subpatterns = diagnostics.Select(d => (
SubpatternSyntax
)d.AdditionalLocations[0].FindNode(cancellationToken))
47
foreach (
var
subpattern in subpatterns)
53
var
currentSubpattern = (
SubpatternSyntax
)current;
54
var
simplified = TrySimplify(currentSubpattern);
60
private static
SubpatternSyntax
? TrySimplify(
SubpatternSyntax
currentSubpattern)
62
if (!SimplifyPropertyPatternHelpers.IsSimplifiable(currentSubpattern, out
var
innerSubpattern, out var outerExpressionColon))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (7)
180
SubpatternSyntax
subpattern => InferTypeInSubpattern(subpattern, node),
1543
SubpatternSyntax
subpattern,
1648
foreach (
var
subPattern in positionalPart.Subpatterns)
1741
SubpatternSyntax
subPattern => InferTypeInSubpattern(subPattern, subPattern.Pattern),
1756
SubpatternSyntax
subPattern => InferTypeInSubpattern(subPattern, subPattern.Pattern),
1929
if (nameColon.Parent is
SubpatternSyntax
subpattern)
1939
if (expressionColon.Parent is
SubpatternSyntax
subpattern)
Microsoft.CodeAnalysis.CSharp.Features (27)
CodeRefactorings\UseRecursivePatterns\UseRecursivePatternsCodeRefactoringProvider.cs (11)
129
var
rightSubpattern = CreateSubpattern(rightNames, CreatePattern(rightReceiver, rightTarget, rightFlipped));
135
var
leftSubpattern = CreateSubpattern(leftNames, CreatePattern(leftReceiver, leftTarget, leftFlipped));
141
var
leftSubpattern = CreateSubpattern(leftNames, CreatePattern(leftReceiver, leftTarget, leftFlipped));
142
var
rightSubpattern = CreateSubpattern(rightNames, CreatePattern(rightReceiver, rightTarget, rightFlipped));
242
static PatternSyntax AddSubpattern(PatternSyntax containingPattern,
SubpatternSyntax
subpattern)
380
private static
SubpatternSyntax
CreateSubpattern(ImmutableArray<IdentifierNameSyntax> names, PatternSyntax pattern)
393
var
subpattern = Subpattern(names[0], pattern);
400
private static
SubpatternSyntax
Subpattern(IdentifierNameSyntax name, PatternSyntax pattern)
403
private static RecursivePatternSyntax RecursivePattern(params ReadOnlySpan<
SubpatternSyntax
> subpatterns)
406
private static RecursivePatternSyntax RecursivePattern(TypeSyntax? type,
SubpatternSyntax
subpattern, VariableDesignationSyntax? designation)
409
private static RecursivePatternSyntax RecursivePattern(
SubpatternSyntax
subpattern)
Completion\CompletionProviders\PropertySubPatternCompletionProvider.cs (4)
170
private static (PropertyPatternClauseSyntax?, ExpressionSyntax?,
SubpatternSyntax
? editingSubpattern) TryGetPropertyPatternClause(SyntaxTree tree, int position, CancellationToken cancellationToken)
184
SubpatternSyntax
? editingSubpattern = null;
185
if (tokenBeforeAdjustment.Parent is IdentifierNameSyntax { Parent: NameColonSyntax { Parent:
SubpatternSyntax
subpattern } })
215
if (memberAccess is { Parent.Parent:
SubpatternSyntax
{ Parent: PropertyPatternClauseSyntax found } })
src\roslyn\src\Analyzers\CSharp\Analyzers\SimplifyPropertyPattern\CSharpSimplifyPropertyPatternDiagnosticAnalyzer.cs (2)
58
var
subpattern = (
SubpatternSyntax
)syntaxContext.Node;
src\roslyn\src\Analyzers\CSharp\Analyzers\SimplifyPropertyPattern\SimplifyPropertyPatternHelpers.cs (2)
13
SubpatternSyntax
subpattern,
14
[NotNullWhen(true)] out
SubpatternSyntax
? innerSubpattern,
src\roslyn\src\Analyzers\CSharp\CodeFixes\SimplifyPropertyPattern\CSharpSimplifyPropertyPatternCodeFixProvider.cs (8)
43
var subpatterns = diagnostics.Select(d => (
SubpatternSyntax
)d.AdditionalLocations[0].FindNode(cancellationToken))
47
foreach (
var
subpattern in subpatterns)
53
var
currentSubpattern = (
SubpatternSyntax
)current;
54
var
simplified = TrySimplify(currentSubpattern);
60
private static
SubpatternSyntax
? TrySimplify(
SubpatternSyntax
currentSubpattern)
62
if (!SimplifyPropertyPatternHelpers.IsSimplifiable(currentSubpattern, out
var
innerSubpattern, out var outerExpressionColon))
Microsoft.CodeAnalysis.CSharp.Workspaces (8)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
771
if (node.Parent is
SubpatternSyntax
)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (7)
180
SubpatternSyntax
subpattern => InferTypeInSubpattern(subpattern, node),
1543
SubpatternSyntax
subpattern,
1648
foreach (
var
subPattern in positionalPart.Subpatterns)
1741
SubpatternSyntax
subPattern => InferTypeInSubpattern(subPattern, subPattern.Pattern),
1756
SubpatternSyntax
subPattern => InferTypeInSubpattern(subPattern, subPattern.Pattern),
1929
if (nameColon.Parent is
SubpatternSyntax
subpattern)
1939
if (expressionColon.Parent is
SubpatternSyntax
subpattern)
Roslyn.Diagnostics.CSharp.Analyzers (8)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
771
if (node.Parent is
SubpatternSyntax
)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (7)
180
SubpatternSyntax
subpattern => InferTypeInSubpattern(subpattern, node),
1543
SubpatternSyntax
subpattern,
1648
foreach (
var
subPattern in positionalPart.Subpatterns)
1741
SubpatternSyntax
subPattern => InferTypeInSubpattern(subPattern, subPattern.Pattern),
1756
SubpatternSyntax
subPattern => InferTypeInSubpattern(subPattern, subPattern.Pattern),
1929
if (nameColon.Parent is
SubpatternSyntax
subpattern)
1939
if (expressionColon.Parent is
SubpatternSyntax
subpattern)