1 instantiation of DeclarationPatternSyntax
Microsoft.CodeAnalysis.CSharp (1)
Syntax.xml.Internal.Generated.cs (1)
8369internal override SyntaxNode CreateRed(SyntaxNode? parent, int position) => new CSharp.Syntax.DeclarationPatternSyntax(this, parent, position);
88 references to DeclarationPatternSyntax
Microsoft.CodeAnalysis.CSharp (13)
Binder\Binder_Patterns.cs (2)
175DeclarationPatternSyntax p => BindDeclarationPattern(p, inputType, permitDesignations, hasErrors, diagnostics), 838DeclarationPatternSyntax node,
Binder\ExpressionVariableFinder.cs (1)
213public override void VisitDeclarationPattern(DeclarationPatternSyntax node)
Syntax.xml.Main.Generated.cs (5)
286public virtual TResult? VisitDeclarationPattern(DeclarationPatternSyntax node) => this.DefaultVisit(node); 1030public virtual void VisitDeclarationPattern(DeclarationPatternSyntax node) => this.DefaultVisit(node); 1773public override SyntaxNode? VisitDeclarationPattern(DeclarationPatternSyntax node) 3722public static DeclarationPatternSyntax DeclarationPattern(TypeSyntax type, VariableDesignationSyntax designation) 3726return (DeclarationPatternSyntax)Syntax.InternalSyntax.SyntaxFactory.DeclarationPattern((Syntax.InternalSyntax.TypeSyntax)type.Green, (Syntax.InternalSyntax.VariableDesignationSyntax)designation.Green).CreateRed();
Syntax.xml.Syntax.Generated.cs (4)
5271public DeclarationPatternSyntax Update(TypeSyntax type, VariableDesignationSyntax designation) 5275var newNode = SyntaxFactory.DeclarationPattern(type, designation); 5283public DeclarationPatternSyntax WithType(TypeSyntax type) => Update(type, this.Designation); 5284public DeclarationPatternSyntax WithDesignation(VariableDesignationSyntax designation) => Update(this.Type, designation);
Syntax\SyntaxFacts.cs (1)
213return ((DeclarationPatternSyntax)parent).Type == node;
Microsoft.CodeAnalysis.CSharp.CodeStyle (7)
src\Analyzers\CSharp\Analyzers\RemoveUnnecessaryDiscardDesignation\CSharpRemoveUnnecessaryDiscardDesignationDiagnosticAnalyzer.cs (1)
55if (discard.Parent is DeclarationPatternSyntax declarationPattern)
src\Analyzers\CSharp\Analyzers\RemoveUnusedParametersAndValues\CSharpRemoveUnusedParametersAndValuesDiagnosticAnalyzer.cs (1)
88case DeclarationPatternSyntax declarationPattern:
src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpUseNotPatternDiagnosticAnalyzer.cs (1)
75IsPatternExpressionSyntax { Pattern: DeclarationPatternSyntax or ConstantPatternSyntax } isPattern
src\Analyzers\CSharp\Analyzers\UsePatternMatching\UsePatternMatchingHelpers.cs (1)
91Pattern: DeclarationPatternSyntax or VarPatternSyntax or RecursivePatternSyntax { Designation: not null }
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
785case DeclarationPatternSyntax:
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpSyntaxFacts.cs (2)
1402var declarationPattern = (DeclarationPatternSyntax)node;
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (12)
src\Analyzers\CSharp\CodeFixes\RemoveUnnecessaryDiscardDesignation\CSharpRemoveUnnecessaryDiscardDesignationCodeFixProvider.cs (3)
45case DeclarationPatternSyntax declarationPattern: 57((DeclarationPatternSyntax)isPattern.Pattern).Type) 66SyntaxFactory.TypePattern(((DeclarationPatternSyntax)current).Type)
src\Analyzers\CSharp\CodeFixes\RemoveUnusedParametersAndValues\CSharpRemoveUnusedValuesCodeFixProvider.cs (1)
99if (parent is DeclarationPatternSyntax declarationPattern &&
src\Analyzers\CSharp\CodeFixes\UsePatternMatching\CSharpAsAndMemberAccessCodeFixProvider.cs (1)
127unaryPattern.DescendantNodes().OfType<DeclarationPatternSyntax>().Any())
src\Analyzers\CSharp\CodeFixes\UsePatternMatching\CSharpAsAndNullCheckCodeFixProvider.cs (2)
104var declarationPattern = DeclarationPattern( 164DeclarationPatternSyntax declarationPattern)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ContextQuery\SyntaxTreeExtensions.cs (3)
1435leftToken.Parent is SingleVariableDesignationSyntax { Parent: DeclarationPatternSyntax }; 1500return patternSyntax is DeclarationPatternSyntax or RecursivePatternSyntax; 3041token.Parent?.Parent is DeclarationPatternSyntax declarationExpression &&
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpReplaceDiscardDeclarationsWithAssignmentsService.cs (1)
98case DeclarationPatternSyntax declarationPattern:
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (1)
1497if (singleVariableDesignation.Parent is DeclarationPatternSyntax declarationPattern)
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (12)
Semantics\PatternMatchingTestBase.cs (4)
100case DeclarationPatternSyntax decl: 152case DeclarationPatternSyntax decl: 267case DeclarationPatternSyntax decl: 385if (designation.Parent is DeclarationPatternSyntax decl)
Semantics\PatternMatchingTests.cs (4)
4293var declaration1 = (DeclarationPatternSyntax)discard1.Parent; 4307var declaration3 = (DeclarationPatternSyntax)discard3.Parent;
Semantics\PatternMatchingTests_Global.cs (4)
6376var x1 = (DeclarationPatternSyntax)x1Decl.Parent; 6399var x1 = (DeclarationPatternSyntax)x1Decl.Parent;
Microsoft.CodeAnalysis.CSharp.Features (19)
CodeRefactorings\UseRecursivePatterns\UseRecursivePatternsCodeRefactoringProvider.cs (2)
222(DeclarationPatternSyntax decl, RecursivePatternSyntax { Type: null, Designation: null } recursive) 250DeclarationPatternSyntax p => RecursivePattern(p.Type, subpattern, p.Designation),
Completion\CompletionProviders\CSharpSuggestionModeCompletionProvider.cs (1)
237return patternSyntax is DeclarationPatternSyntax or RecursivePatternSyntax;
Completion\CompletionProviders\DeclarationName\DeclarationNameInfo.cs (1)
506result = IsLastTokenOfType<DeclarationPatternSyntax>(
Completion\KeywordRecommenders\WhenKeywordRecommender.cs (1)
79if (expressionOrPattern is DeclarationPatternSyntax)
ExtractMethod\CSharpMethodExtractor.CSharpCodeGenerator.cs (2)
732var pattern = (DeclarationPatternSyntax)node;
InlineHints\CSharpInlineTypeHintsService.cs (1)
51else if (node is SingleVariableDesignationSyntax { Parent: not DeclarationPatternSyntax and not DeclarationExpressionSyntax } variableDesignation)
src\Analyzers\CSharp\Analyzers\RemoveUnnecessaryDiscardDesignation\CSharpRemoveUnnecessaryDiscardDesignationDiagnosticAnalyzer.cs (1)
55if (discard.Parent is DeclarationPatternSyntax declarationPattern)
src\Analyzers\CSharp\Analyzers\RemoveUnusedParametersAndValues\CSharpRemoveUnusedParametersAndValuesDiagnosticAnalyzer.cs (1)
88case DeclarationPatternSyntax declarationPattern:
src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpUseNotPatternDiagnosticAnalyzer.cs (1)
75IsPatternExpressionSyntax { Pattern: DeclarationPatternSyntax or ConstantPatternSyntax } isPattern
src\Analyzers\CSharp\Analyzers\UsePatternMatching\UsePatternMatchingHelpers.cs (1)
91Pattern: DeclarationPatternSyntax or VarPatternSyntax or RecursivePatternSyntax { Designation: not null }
src\Analyzers\CSharp\CodeFixes\RemoveUnnecessaryDiscardDesignation\CSharpRemoveUnnecessaryDiscardDesignationCodeFixProvider.cs (3)
45case DeclarationPatternSyntax declarationPattern: 57((DeclarationPatternSyntax)isPattern.Pattern).Type) 66SyntaxFactory.TypePattern(((DeclarationPatternSyntax)current).Type)
src\Analyzers\CSharp\CodeFixes\RemoveUnusedParametersAndValues\CSharpRemoveUnusedValuesCodeFixProvider.cs (1)
99if (parent is DeclarationPatternSyntax declarationPattern &&
src\Analyzers\CSharp\CodeFixes\UsePatternMatching\CSharpAsAndMemberAccessCodeFixProvider.cs (1)
127unaryPattern.DescendantNodes().OfType<DeclarationPatternSyntax>().Any())
src\Analyzers\CSharp\CodeFixes\UsePatternMatching\CSharpAsAndNullCheckCodeFixProvider.cs (2)
104var declarationPattern = DeclarationPattern( 164DeclarationPatternSyntax declarationPattern)
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (2)
Semantics\LocalFunctionTests.cs (2)
675var decl = (DeclarationPatternSyntax)tree.FindNodeOrTokenByKind(SyntaxKind.DeclarationPattern, occurrence: 1).AsNode();
Microsoft.CodeAnalysis.CSharp.Syntax.UnitTests (5)
Generated\Syntax.Test.xml.Generated.cs (5)
10630private static DeclarationPatternSyntax GenerateDeclarationPattern() 12162var node = GenerateDeclarationPattern(); 12166var newNode = node.WithType(node.Type).WithDesignation(node.Designation); 16603var oldNode = GenerateDeclarationPattern(); 16619var oldNode = GenerateDeclarationPattern();
Microsoft.CodeAnalysis.CSharp.Workspaces (9)
Classification\SyntaxClassification\NameSyntaxClassifier.cs (1)
278name.CheckParent<DeclarationPatternSyntax>(v => v.Type == name) ||
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
785case DeclarationPatternSyntax:
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpSyntaxFacts.cs (2)
1402var declarationPattern = (DeclarationPatternSyntax)node;
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ContextQuery\SyntaxTreeExtensions.cs (3)
1435leftToken.Parent is SingleVariableDesignationSyntax { Parent: DeclarationPatternSyntax }; 1500return patternSyntax is DeclarationPatternSyntax or RecursivePatternSyntax; 3041token.Parent?.Parent is DeclarationPatternSyntax declarationExpression &&
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpReplaceDiscardDeclarationsWithAssignmentsService.cs (1)
98case DeclarationPatternSyntax declarationPattern:
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (1)
1497if (singleVariableDesignation.Parent is DeclarationPatternSyntax declarationPattern)
Microsoft.CodeAnalysis.Test.Utilities (1)
Compilation\TestOperationVisitor.cs (1)
1430(operation.Syntax as CSharp.Syntax.DeclarationPatternSyntax)?.Designation ??
Roslyn.Diagnostics.CSharp.Analyzers (8)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
785case DeclarationPatternSyntax:
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpSyntaxFacts.cs (2)
1402var declarationPattern = (DeclarationPatternSyntax)node;
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ContextQuery\SyntaxTreeExtensions.cs (3)
1435leftToken.Parent is SingleVariableDesignationSyntax { Parent: DeclarationPatternSyntax }; 1500return patternSyntax is DeclarationPatternSyntax or RecursivePatternSyntax; 3041token.Parent?.Parent is DeclarationPatternSyntax declarationExpression &&
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpReplaceDiscardDeclarationsWithAssignmentsService.cs (1)
98case DeclarationPatternSyntax declarationPattern:
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (1)
1497if (singleVariableDesignation.Parent is DeclarationPatternSyntax declarationPattern)