75 references to SubpatternSyntax
Microsoft.CodeAnalysis.CSharp (7)
Binder\Binder_Patterns.cs (4)
1055
var
subPattern = node.Subpatterns[i];
1106
foreach (
var
subpatternSyntax in node.Subpatterns)
1161
var
subpatternSyntax = node.Subpatterns[i];
1457
foreach (
SubpatternSyntax
p in node.Subpatterns)
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)
CSharpSimplifyPropertyPatternDiagnosticAnalyzer.cs (2)
60
var
subpattern = (
SubpatternSyntax
)syntaxContext.Node;
ParenthesizedExpressionSyntaxExtensions.cs (1)
719
if (node.Parent is
SubpatternSyntax
)
SimplifyPropertyPatternHelpers.cs (2)
14
SubpatternSyntax
subpattern,
15
[NotNullWhen(true)] out
SubpatternSyntax
? innerSubpattern,
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (15)
CSharpSimplifyPropertyPatternCodeFixProvider.cs (8)
49
var subpatterns = diagnostics.Select(d => (
SubpatternSyntax
)d.AdditionalLocations[0].FindNode(cancellationToken))
53
foreach (
var
subpattern in subpatterns)
59
var
currentSubpattern = (
SubpatternSyntax
)current;
60
var
simplified = TrySimplify(currentSubpattern);
68
private static
SubpatternSyntax
? TrySimplify(
SubpatternSyntax
currentSubpattern)
70
if (!SimplifyPropertyPatternHelpers.IsSimplifiable(currentSubpattern, out
var
innerSubpattern, out var outerExpressionColon))
CSharpTypeInferenceService.TypeInferrer.cs (7)
178
SubpatternSyntax
subpattern => InferTypeInSubpattern(subpattern, node),
1491
SubpatternSyntax
subpattern,
1596
foreach (
var
subPattern in positionalPart.Subpatterns)
1698
SubpatternSyntax
subPattern => InferTypeInSubpattern(subPattern, subPattern.Pattern),
1713
SubpatternSyntax
subPattern => InferTypeInSubpattern(subPattern, subPattern.Pattern),
1888
if (nameColon.Parent is
SubpatternSyntax
subpattern)
1898
if (expressionColon.Parent is
SubpatternSyntax
subpattern)
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (11)
Semantics\PatternMatchingTests3.cs (7)
49
var subpatterns = tree.GetRoot().DescendantNodes().OfType<
SubpatternSyntax
>().ToArray();
109
var subpatterns = tree.GetRoot().DescendantNodes().OfType<
SubpatternSyntax
>().ToArray();
160
var subpatterns = tree.GetRoot().DescendantNodes().OfType<
SubpatternSyntax
>().ToArray();
205
var subpatterns = tree.GetRoot().DescendantNodes().OfType<
SubpatternSyntax
>().ToArray();
256
var subpatterns = tree.GetRoot().DescendantNodes().OfType<
SubpatternSyntax
>().ToArray();
299
var subpatterns = tree.GetRoot().DescendantNodes().OfType<
SubpatternSyntax
>().ToArray();
346
var subpatterns = tree.GetRoot().DescendantNodes().OfType<
SubpatternSyntax
>().ToArray();
Semantics\PatternMatchingTests5.cs (4)
1106
var subpatterns = tree.GetRoot().DescendantNodes().OfType<
SubpatternSyntax
>().ToArray();
1186
var subpatterns = tree.GetRoot().DescendantNodes().OfType<
SubpatternSyntax
>().ToArray();
1237
var subpatterns = tree.GetRoot().DescendantNodes().OfType<
SubpatternSyntax
>().ToArray();
1289
var subpatterns = tree.GetRoot().DescendantNodes().OfType<
SubpatternSyntax
>().ToArray();
Microsoft.CodeAnalysis.CSharp.Features (22)
CodeRefactorings\UseRecursivePatterns\UseRecursivePatternsCodeRefactoringProvider.cs (9)
124
var
leftSubpattern = CreateSubpattern(leftNames, CreatePattern(leftReceiver, leftTarget, leftFlipped));
125
var
rightSubpattern = CreateSubpattern(rightNames, CreatePattern(rightReceiver, rightTarget, rightFlipped));
224
static PatternSyntax AddSubpattern(PatternSyntax containingPattern,
SubpatternSyntax
subpattern)
362
private static
SubpatternSyntax
CreateSubpattern(ImmutableArray<IdentifierNameSyntax> names, PatternSyntax pattern)
375
var
subpattern = Subpattern(names[0], pattern);
382
private static
SubpatternSyntax
Subpattern(IdentifierNameSyntax name, PatternSyntax pattern)
385
private static RecursivePatternSyntax RecursivePattern(params
SubpatternSyntax
[] subpatterns)
388
private static RecursivePatternSyntax RecursivePattern(TypeSyntax? type,
SubpatternSyntax
subpattern, VariableDesignationSyntax? designation)
391
private static RecursivePatternSyntax RecursivePattern(
SubpatternSyntax
subpattern)
Completion\CompletionProviders\PropertySubPatternCompletionProvider.cs (1)
206
if (memberAccess is { Parent.Parent:
SubpatternSyntax
{ Parent: PropertyPatternClauseSyntax found } })
CSharpSimplifyPropertyPatternCodeFixProvider.cs (8)
49
var subpatterns = diagnostics.Select(d => (
SubpatternSyntax
)d.AdditionalLocations[0].FindNode(cancellationToken))
53
foreach (
var
subpattern in subpatterns)
59
var
currentSubpattern = (
SubpatternSyntax
)current;
60
var
simplified = TrySimplify(currentSubpattern);
68
private static
SubpatternSyntax
? TrySimplify(
SubpatternSyntax
currentSubpattern)
70
if (!SimplifyPropertyPatternHelpers.IsSimplifiable(currentSubpattern, out
var
innerSubpattern, out var outerExpressionColon))
CSharpSimplifyPropertyPatternDiagnosticAnalyzer.cs (2)
60
var
subpattern = (
SubpatternSyntax
)syntaxContext.Node;
SimplifyPropertyPatternHelpers.cs (2)
14
SubpatternSyntax
subpattern,
15
[NotNullWhen(true)] out
SubpatternSyntax
? innerSubpattern,
Microsoft.CodeAnalysis.CSharp.Syntax.UnitTests (7)
Generated\Syntax.Test.xml.Generated.cs (7)
10254
=> SyntaxFactory.PositionalPatternClause(SyntaxFactory.Token(SyntaxKind.OpenParenToken), new SeparatedSyntaxList<
SubpatternSyntax
>(), SyntaxFactory.Token(SyntaxKind.CloseParenToken));
10257
=> SyntaxFactory.PropertyPatternClause(SyntaxFactory.Token(SyntaxKind.OpenBraceToken), new SeparatedSyntaxList<
SubpatternSyntax
>(), SyntaxFactory.Token(SyntaxKind.CloseBraceToken));
10259
private static
SubpatternSyntax
GenerateSubpattern()
11777
var
node = GenerateSubpattern();
11781
var
newNode = node.WithExpressionColon(node.ExpressionColon).WithPattern(node.Pattern);
16115
var
oldNode = GenerateSubpattern();
16131
var
oldNode = GenerateSubpattern();
Microsoft.CodeAnalysis.CSharp.Workspaces (8)
CSharpTypeInferenceService.TypeInferrer.cs (7)
178
SubpatternSyntax
subpattern => InferTypeInSubpattern(subpattern, node),
1491
SubpatternSyntax
subpattern,
1596
foreach (
var
subPattern in positionalPart.Subpatterns)
1698
SubpatternSyntax
subPattern => InferTypeInSubpattern(subPattern, subPattern.Pattern),
1713
SubpatternSyntax
subPattern => InferTypeInSubpattern(subPattern, subPattern.Pattern),
1888
if (nameColon.Parent is
SubpatternSyntax
subpattern)
1898
if (expressionColon.Parent is
SubpatternSyntax
subpattern)
ParenthesizedExpressionSyntaxExtensions.cs (1)
719
if (node.Parent is
SubpatternSyntax
)