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);
1053
public virtual void VisitSubpattern(
SubpatternSyntax
node) => this.DefaultVisit(node);
1800
public override SyntaxNode? VisitSubpattern(
SubpatternSyntax
node)
3778
public static PositionalPatternClauseSyntax PositionalPatternClause(SyntaxToken openParenToken, SeparatedSyntaxList<
SubpatternSyntax
> subpatterns, SyntaxToken closeParenToken)
3786
public static PositionalPatternClauseSyntax PositionalPatternClause(SeparatedSyntaxList<
SubpatternSyntax
> subpatterns = default)
3790
public static PropertyPatternClauseSyntax PropertyPatternClause(SyntaxToken openBraceToken, SeparatedSyntaxList<
SubpatternSyntax
> subpatterns, SyntaxToken closeBraceToken)
3798
public static PropertyPatternClauseSyntax PropertyPatternClause(SeparatedSyntaxList<
SubpatternSyntax
> subpatterns = default)
3802
public static
SubpatternSyntax
Subpattern(BaseExpressionColonSyntax? expressionColon, PatternSyntax pattern)
3805
return (
SubpatternSyntax
)Syntax.InternalSyntax.SyntaxFactory.Subpattern(expressionColon == null ? null : (Syntax.InternalSyntax.BaseExpressionColonSyntax)expressionColon.Green, (Syntax.InternalSyntax.PatternSyntax)pattern.Green).CreateRed();
3809
public static
SubpatternSyntax
Subpattern(PatternSyntax pattern)
_generated\2\Syntax.xml.Syntax.Generated.cs (16)
5440
public RecursivePatternSyntax AddPositionalPatternClauseSubpatterns(params
SubpatternSyntax
[] items)
5445
public RecursivePatternSyntax AddPropertyPatternClauseSubpatterns(params
SubpatternSyntax
[] items)
5469
public SeparatedSyntaxList<
SubpatternSyntax
> Subpatterns
5474
return red != null ? new SeparatedSyntaxList<
SubpatternSyntax
>(red, GetChildIndex(1)) : default;
5487
public PositionalPatternClauseSyntax Update(SyntaxToken openParenToken, SeparatedSyntaxList<
SubpatternSyntax
> subpatterns, SyntaxToken closeParenToken)
5500
public PositionalPatternClauseSyntax WithSubpatterns(SeparatedSyntaxList<
SubpatternSyntax
> subpatterns) => Update(this.OpenParenToken, subpatterns, this.CloseParenToken);
5503
public PositionalPatternClauseSyntax AddSubpatterns(params
SubpatternSyntax
[] items) => WithSubpatterns(this.Subpatterns.AddRange(items));
5523
public SeparatedSyntaxList<
SubpatternSyntax
> Subpatterns
5528
return red != null ? new SeparatedSyntaxList<
SubpatternSyntax
>(red, GetChildIndex(1)) : default;
5541
public PropertyPatternClauseSyntax Update(SyntaxToken openBraceToken, SeparatedSyntaxList<
SubpatternSyntax
> subpatterns, SyntaxToken closeBraceToken)
5554
public PropertyPatternClauseSyntax WithSubpatterns(SeparatedSyntaxList<
SubpatternSyntax
> subpatterns) => Update(this.OpenBraceToken, subpatterns, this.CloseBraceToken);
5557
public PropertyPatternClauseSyntax AddSubpatterns(params
SubpatternSyntax
[] items) => WithSubpatterns(this.Subpatterns.AddRange(items));
5599
public
SubpatternSyntax
Update(BaseExpressionColonSyntax? expressionColon, PatternSyntax pattern)
5603
var
newNode = SyntaxFactory.Subpattern(expressionColon, pattern);
5611
public
SubpatternSyntax
WithExpressionColon(BaseExpressionColonSyntax? expressionColon) => Update(expressionColon, this.Pattern);
5612
public
SubpatternSyntax
WithPattern(PatternSyntax pattern) => Update(this.ExpressionColon, pattern);
Binder\Binder_Patterns.cs (4)
1684
var
subPattern = node.Subpatterns[i];
1739
foreach (
var
subpatternSyntax in node.Subpatterns)
1780
var
subpatternSyntax = node.Subpatterns[i];
2127
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)