1 instantiation of DeclarationExpressionSyntax
Microsoft.CodeAnalysis.CSharp (1)
_generated\1\Syntax.xml.Internal.Generated.cs (1)
4681internal override SyntaxNode CreateRed(SyntaxNode? parent, int position) => new CSharp.Syntax.DeclarationExpressionSyntax(this, parent, position);
146 references to DeclarationExpressionSyntax
Microsoft.AspNetCore.App.Analyzers (1)
RouteEmbeddedLanguage\FrameworkParametersCompletionProvider.cs (1)
417if (argument.Expression is DeclarationExpressionSyntax declarationExpression &&
Microsoft.CodeAnalysis.CSharp (53)
_generated\0\Syntax.xml.Main.Generated.cs (5)
175public virtual TResult? VisitDeclarationExpression(DeclarationExpressionSyntax node) => this.DefaultVisit(node); 923public virtual void VisitDeclarationExpression(DeclarationExpressionSyntax node) => this.DefaultVisit(node); 1670public override SyntaxNode? VisitDeclarationExpression(DeclarationExpressionSyntax node) 3201public static DeclarationExpressionSyntax DeclarationExpression(TypeSyntax type, VariableDesignationSyntax designation) 3205return (DeclarationExpressionSyntax)Syntax.InternalSyntax.SyntaxFactory.DeclarationExpression((Syntax.InternalSyntax.TypeSyntax)type.Green, (Syntax.InternalSyntax.VariableDesignationSyntax)designation.Green).CreateRed();
_generated\2\Syntax.xml.Syntax.Generated.cs (4)
2941public DeclarationExpressionSyntax Update(TypeSyntax type, VariableDesignationSyntax designation) 2945var newNode = SyntaxFactory.DeclarationExpression(type, designation); 2953public DeclarationExpressionSyntax WithType(TypeSyntax type) => Update(type, this.Designation); 2954public DeclarationExpressionSyntax WithDesignation(VariableDesignationSyntax designation) => Update(this.Type, designation);
Binder\Binder_Deconstruct.cs (8)
33DeclarationExpressionSyntax? declaration = null; 90ref DeclarationExpressionSyntax? declaration, 738ref DeclarationExpressionSyntax? declaration, 745var component = (DeclarationExpressionSyntax)node; 821if (discarded.Parent is DeclarationExpressionSyntax declExpr && declExpr.Designation == discarded) 880if (designation.Parent is DeclarationExpressionSyntax declExpr && declExpr.Designation == designation) 931if (designation.Parent is DeclarationExpressionSyntax declExpr && declExpr.Designation == designation)
Binder\Binder_Expressions.cs (6)
862return BindDeclarationExpressionAsError((DeclarationExpressionSyntax)node, diagnostics); 961private BoundExpression BindDeclarationExpressionAsError(DeclarationExpressionSyntax node, BindingDiagnosticBag diagnostics) 3218var declarationExpression = (DeclarationExpressionSyntax)argumentSyntax.Expression; 3228private BoundExpression BindOutDeclarationArgument(DeclarationExpressionSyntax declarationExpression, BindingDiagnosticBag diagnostics) 3266DeclarationExpressionSyntax declarationExpression,
Binder\ExpressionVariableFinder.cs (7)
410public override void VisitDeclarationExpression(DeclarationExpressionSyntax node) 415private void VisitDeclarationExpressionDesignation(DeclarationExpressionSyntax node, VariableDesignationSyntax designation) 483var declarationExpression = (DeclarationExpressionSyntax)possibleTupleDeclaration; 535protected abstract TFieldOrLocalSymbol? MakeDeclarationExpressionVariable(DeclarationExpressionSyntax node, SingleVariableDesignationSyntax designation, SyntaxNode nodeToBind); 625protected override LocalSymbol? MakeDeclarationExpressionVariable(DeclarationExpressionSyntax node, SingleVariableDesignationSyntax designation, SyntaxNode nodeToBind) 724protected override Symbol MakeDeclarationExpressionVariable(DeclarationExpressionSyntax node, SingleVariableDesignationSyntax designation, SyntaxNode nodeToBind)
Binder\ForEachLoopBinder.cs (4)
121var declarationExpression = (DeclarationExpressionSyntax)declaration; 202DeclarationExpressionSyntax declaration = null; 386DeclarationExpressionSyntax declaration = null;
BoundTree\VariablePendingInference.cs (3)
39((DeclarationExpressionSyntax)this.Syntax).Designation.Kind() == SyntaxKind.SingleVariableDesignation)); 62((DeclarationExpressionSyntax)this.Syntax).Type : 125designation = (SingleVariableDesignationSyntax)((DeclarationExpressionSyntax)this.Syntax).Designation;
Compilation\CSharpSemanticModel.cs (3)
536else if (SyntaxFacts.IsDeclarationExpressionType(expression, out DeclarationExpressionSyntax parent)) 561else if (expression is DeclarationExpressionSyntax declaration) 974else if (SyntaxFacts.IsDeclarationExpressionType(expression, out DeclarationExpressionSyntax parent))
Operations\CSharpOperationFactory.cs (3)
567if (isDeclaration && syntax is DeclarationExpressionSyntax declarationExpressionSyntax) 587if (isDeclaration && syntax is DeclarationExpressionSyntax declarationExpressionSyntax) 2298if (syntax is DeclarationExpressionSyntax declarationExpressionSyntax)
Symbols\Source\SourceLocalSymbol.cs (1)
779DeclarationExpressionSyntax? declaration = null;
Syntax\SyntaxExtensions.cs (4)
75internal static SyntaxToken Identifier(this DeclarationExpressionSyntax self) 222return ((DeclarationExpressionSyntax)node).Designation.Kind() == SyntaxKind.ParenthesizedVariableDesignation; 384internal static bool IsOutDeclaration(this DeclarationExpressionSyntax p) 390internal static bool IsOutVarDeclaration(this DeclarationExpressionSyntax p)
Syntax\SyntaxFacts.cs (5)
222return ((DeclarationExpressionSyntax)parent).Type == node; 453internal static bool IsDeclarationExpressionType(SyntaxNode node, [NotNullWhen(true)] out DeclarationExpressionSyntax? parent) 455parent = node.ModifyingScopedOrRefTypeOrSelf().Parent as DeclarationExpressionSyntax; 473var declaration = (DeclarationExpressionSyntax)syntax;
Microsoft.CodeAnalysis.CSharp.CodeStyle (17)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionExpression\CSharpUseCollectionExpressionForBuilderDiagnosticAnalyzer.cs (1)
149argumentIndex == arguments.Count - 1 && arguments[argumentIndex] is { RefKindKeyword.RawKind: (int)SyntaxKind.OutKeyword, Expression: DeclarationExpressionSyntax { Designation: SingleVariableDesignationSyntax singleVariable } }
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionExpression\UseCollectionExpressionHelpers.cs (1)
581siblingArgument.Expression is DeclarationExpressionSyntax { Designation: SingleVariableDesignationSyntax designation })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SemanticModelExtensions.cs (1)
372if (current is DeclarationExpressionSyntax decl)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\FormattingHelpers.cs (1)
527return currentToken.Kind() == SyntaxKind.OpenParenToken && currentToken is { Parent: ParenthesizedVariableDesignationSyntax, Parent.Parent: DeclarationExpressionSyntax };
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpSyntaxFacts.cs (1)
189=> node is DeclarationExpressionSyntax;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\SpeculationAnalyzer.cs (2)
658ForEachVariableStatementSyntax { Variable: DeclarationExpressionSyntax declarationExpression } => declarationExpression.Type.IsTypeInferred(semanticModel), 900else if (forEach is ForEachVariableStatementSyntax { Variable: DeclarationExpressionSyntax declarationExpression })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpTypeStyleHelper.cs (2)
71DeclarationExpressionSyntax declarationExpression => ShouldAnalyzeDeclarationExpression(declarationExpression, semanticModel, cancellationToken) 95protected virtual bool ShouldAnalyzeDeclarationExpression(DeclarationExpressionSyntax declaration, SemanticModel semanticModel, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpTypeStyleHelper.State.cs (1)
160DeclarationExpressionSyntax declExpr => declExpr.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpUseExplicitTypeHelper.cs (3)
65if (typeName.Parent is DeclarationExpressionSyntax declExpression && 106else if (typeName.Parent is DeclarationExpressionSyntax) 114protected override bool ShouldAnalyzeDeclarationExpression(DeclarationExpressionSyntax declaration, SemanticModel semanticModel, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpUseImplicitTypeHelper.cs (4)
69protected override bool ShouldAnalyzeDeclarationExpression(DeclarationExpressionSyntax declaration, SemanticModel semanticModel, CancellationToken cancellationToken) 139else if (typeName.Parent is DeclarationExpressionSyntax declarationExpression && 149DeclarationExpressionSyntax declarationExpression, 189private static bool IsSafeToSwitchToVarWithoutNeedingSpeculation(DeclarationExpressionSyntax declarationExpression, SemanticModel semanticModel, CancellationToken cancellationToken)
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (11)
src\roslyn\src\Analyzers\CSharp\CodeFixes\InlineDeclaration\CSharpInlineDeclarationCodeFixProvider.cs (3)
220var declarationExpression = GetDeclarationExpression( 266private static DeclarationExpressionSyntax GetDeclarationExpression( 326DeclarationExpressionSyntax declarationExpression,
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseDeconstruction\CSharpUseDeconstructionCodeFixProvider.cs (1)
156private static DeclarationExpressionSyntax CreateDeclarationExpression(INamedTypeSymbol tupleType, TypeSyntax typeNode)
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseImplicitOrExplicitType\UseExplicitTypeCodeFixProvider.cs (2)
80else if (declarationContext is DeclarationExpressionSyntax declarationExpression) 90private static async Task HandleDeclarationExpressionAsync(Document document, SyntaxEditor editor, DeclarationExpressionSyntax declarationExpression, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\InternalExtensions.cs (1)
23if (expression is DeclarationExpressionSyntax decl)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpReplaceDiscardDeclarationsWithAssignmentsService.cs (1)
70case DeclarationExpressionSyntax declarationExpression:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (3)
2318if (left is DeclarationExpressionSyntax declExpr) 2384if (expr is DeclarationExpressionSyntax declExpr) 2415DeclarationExpressionSyntax declaration,
Microsoft.CodeAnalysis.CSharp.Features (22)
CodeRefactorings\UseExplicitOrImplicitType\AbstractUseTypeCodeRefactoringProvider.cs (3)
84var declNode = await context.TryGetRelevantNodeAsync<DeclarationExpressionSyntax>().ConfigureAwait(false); 106if (type?.Parent is DeclarationExpressionSyntax or VariableDeclarationSyntax)
Completion\CompletionProviders\DeclarationName\DeclarationNameInfo.cs (1)
707return ((DeclarationExpressionSyntax)argumentSyntax.Expression).Type;
ConvertLinq\ConvertForEachToLinqQuery\DefaultConverter.cs (1)
76var declaration = DeclarationExpression(
Debugging\CSharpProximityExpressionsService.RelevantExpressionsCollector.cs (2)
126var t = (DeclarationExpressionSyntax)component;
EditAndContinue\SyntaxComparer.cs (2)
1332var declarationExpression = (DeclarationExpressionSyntax)expression;
ExtractMethod\CSharpMethodExtractor.CSharpCodeGenerator.cs (3)
708var declaration = (DeclarationExpressionSyntax)node; 993DeclarationExpressionSyntax CreateFlowControlDeclarationExpression()
InlineHints\CSharpInlineTypeHintsService.cs (2)
45if (node is DeclarationExpressionSyntax { Type.IsVar: true, Designation: not ParenthesizedVariableDesignationSyntax } declarationExpression) 51else if (node is SingleVariableDesignationSyntax { Parent: not DeclarationPatternSyntax and not DeclarationExpressionSyntax } variableDesignation)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionExpression\CSharpUseCollectionExpressionForBuilderDiagnosticAnalyzer.cs (1)
149argumentIndex == arguments.Count - 1 && arguments[argumentIndex] is { RefKindKeyword.RawKind: (int)SyntaxKind.OutKeyword, Expression: DeclarationExpressionSyntax { Designation: SingleVariableDesignationSyntax singleVariable } }
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionExpression\UseCollectionExpressionHelpers.cs (1)
581siblingArgument.Expression is DeclarationExpressionSyntax { Designation: SingleVariableDesignationSyntax designation })
src\roslyn\src\Analyzers\CSharp\CodeFixes\InlineDeclaration\CSharpInlineDeclarationCodeFixProvider.cs (3)
220var declarationExpression = GetDeclarationExpression( 266private static DeclarationExpressionSyntax GetDeclarationExpression( 326DeclarationExpressionSyntax declarationExpression,
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseDeconstruction\CSharpUseDeconstructionCodeFixProvider.cs (1)
156private static DeclarationExpressionSyntax CreateDeclarationExpression(INamedTypeSymbol tupleType, TypeSyntax typeNode)
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseImplicitOrExplicitType\UseExplicitTypeCodeFixProvider.cs (2)
80else if (declarationContext is DeclarationExpressionSyntax declarationExpression) 90private static async Task HandleDeclarationExpressionAsync(Document document, SyntaxEditor editor, DeclarationExpressionSyntax declarationExpression, CancellationToken cancellationToken)
Microsoft.CodeAnalysis.CSharp.Workspaces (22)
Classification\SyntaxClassification\NameSyntaxClassifier.cs (1)
280name.CheckParent<DeclarationExpressionSyntax>(f => f.Type == name);
Recommendations\CSharpRecommendationServiceRunner.cs (1)
357!contextNode.IsFoundUnder<DeclarationExpressionSyntax>(d => d.Type);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SemanticModelExtensions.cs (1)
372if (current is DeclarationExpressionSyntax decl)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\FormattingHelpers.cs (1)
527return currentToken.Kind() == SyntaxKind.OpenParenToken && currentToken is { Parent: ParenthesizedVariableDesignationSyntax, Parent.Parent: DeclarationExpressionSyntax };
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpSyntaxFacts.cs (1)
189=> node is DeclarationExpressionSyntax;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\SpeculationAnalyzer.cs (2)
658ForEachVariableStatementSyntax { Variable: DeclarationExpressionSyntax declarationExpression } => declarationExpression.Type.IsTypeInferred(semanticModel), 900else if (forEach is ForEachVariableStatementSyntax { Variable: DeclarationExpressionSyntax declarationExpression })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpTypeStyleHelper.cs (2)
71DeclarationExpressionSyntax declarationExpression => ShouldAnalyzeDeclarationExpression(declarationExpression, semanticModel, cancellationToken) 95protected virtual bool ShouldAnalyzeDeclarationExpression(DeclarationExpressionSyntax declaration, SemanticModel semanticModel, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpTypeStyleHelper.State.cs (1)
160DeclarationExpressionSyntax declExpr => declExpr.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpUseExplicitTypeHelper.cs (3)
65if (typeName.Parent is DeclarationExpressionSyntax declExpression && 106else if (typeName.Parent is DeclarationExpressionSyntax) 114protected override bool ShouldAnalyzeDeclarationExpression(DeclarationExpressionSyntax declaration, SemanticModel semanticModel, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpUseImplicitTypeHelper.cs (4)
69protected override bool ShouldAnalyzeDeclarationExpression(DeclarationExpressionSyntax declaration, SemanticModel semanticModel, CancellationToken cancellationToken) 139else if (typeName.Parent is DeclarationExpressionSyntax declarationExpression && 149DeclarationExpressionSyntax declarationExpression, 189private static bool IsSafeToSwitchToVarWithoutNeedingSpeculation(DeclarationExpressionSyntax declarationExpression, SemanticModel semanticModel, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\InternalExtensions.cs (1)
23if (expression is DeclarationExpressionSyntax decl)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpReplaceDiscardDeclarationsWithAssignmentsService.cs (1)
70case DeclarationExpressionSyntax declarationExpression:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (3)
2318if (left is DeclarationExpressionSyntax declExpr) 2384if (expr is DeclarationExpressionSyntax declExpr) 2415DeclarationExpressionSyntax declaration,
Roslyn.Diagnostics.CSharp.Analyzers (20)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SemanticModelExtensions.cs (1)
372if (current is DeclarationExpressionSyntax decl)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\FormattingHelpers.cs (1)
527return currentToken.Kind() == SyntaxKind.OpenParenToken && currentToken is { Parent: ParenthesizedVariableDesignationSyntax, Parent.Parent: DeclarationExpressionSyntax };
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpSyntaxFacts.cs (1)
189=> node is DeclarationExpressionSyntax;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\SpeculationAnalyzer.cs (2)
658ForEachVariableStatementSyntax { Variable: DeclarationExpressionSyntax declarationExpression } => declarationExpression.Type.IsTypeInferred(semanticModel), 900else if (forEach is ForEachVariableStatementSyntax { Variable: DeclarationExpressionSyntax declarationExpression })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpTypeStyleHelper.cs (2)
71DeclarationExpressionSyntax declarationExpression => ShouldAnalyzeDeclarationExpression(declarationExpression, semanticModel, cancellationToken) 95protected virtual bool ShouldAnalyzeDeclarationExpression(DeclarationExpressionSyntax declaration, SemanticModel semanticModel, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpTypeStyleHelper.State.cs (1)
160DeclarationExpressionSyntax declExpr => declExpr.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpUseExplicitTypeHelper.cs (3)
65if (typeName.Parent is DeclarationExpressionSyntax declExpression && 106else if (typeName.Parent is DeclarationExpressionSyntax) 114protected override bool ShouldAnalyzeDeclarationExpression(DeclarationExpressionSyntax declaration, SemanticModel semanticModel, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpUseImplicitTypeHelper.cs (4)
69protected override bool ShouldAnalyzeDeclarationExpression(DeclarationExpressionSyntax declaration, SemanticModel semanticModel, CancellationToken cancellationToken) 139else if (typeName.Parent is DeclarationExpressionSyntax declarationExpression && 149DeclarationExpressionSyntax declarationExpression, 189private static bool IsSafeToSwitchToVarWithoutNeedingSpeculation(DeclarationExpressionSyntax declarationExpression, SemanticModel semanticModel, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\InternalExtensions.cs (1)
23if (expression is DeclarationExpressionSyntax decl)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpReplaceDiscardDeclarationsWithAssignmentsService.cs (1)
70case DeclarationExpressionSyntax declarationExpression:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (3)
2318if (left is DeclarationExpressionSyntax declExpr) 2384if (expr is DeclarationExpressionSyntax declExpr) 2415DeclarationExpressionSyntax declaration,