87 references to ForEachVariableStatementSyntax
Microsoft.CodeAnalysis.CSharp (26)
Binder\ForEachLoopBinder.cs (5)
76var syntax = (ForEachVariableStatementSyntax)_syntax; 197ExpressionSyntax variables = ((ForEachVariableStatementSyntax)_syntax).Variable; 369var node = (ForEachVariableStatementSyntax)_syntax;
Binder\LocalBinderFactory.cs (2)
652if (node is ForEachVariableStatementSyntax forEachVariable && !forEachVariable.Variable.IsDeconstructionLeft()) 666public override void VisitForEachVariableStatement(ForEachVariableStatementSyntax node)
Compilation\CSharpSemanticModel.cs (1)
4836public abstract DeconstructionInfo GetDeconstructionInfo(ForEachVariableStatementSyntax node);
Compilation\MemberSemanticModel.cs (1)
1015public override DeconstructionInfo GetDeconstructionInfo(ForEachVariableStatementSyntax node)
Compilation\SpeculativeSemanticModelWithMemberModel.cs (1)
415public override DeconstructionInfo GetDeconstructionInfo(ForEachVariableStatementSyntax node)
Compilation\SyntaxTreeSemanticModel.cs (1)
2378public override DeconstructionInfo GetDeconstructionInfo(ForEachVariableStatementSyntax node)
CSharpExtensions.cs (1)
922public static DeconstructionInfo GetDeconstructionInfo(this SemanticModel? semanticModel, ForEachVariableStatementSyntax @foreach)
FlowAnalysis\NullableWalker.cs (1)
11135ForEachVariableStatementSyntax variableStatement => variableStatement.Variable.GetLocation(),
Lowering\Instrumentation\DebugInfoInjector.cs (4)
278var forEachSyntax = (ForEachVariableStatementSyntax)original.Syntax; 324var forEachSyntax = (ForEachVariableStatementSyntax)original.Syntax;
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (1)
1288if (forEachSyntax is ForEachVariableStatementSyntax)
Symbols\LocalDeclarationKind.cs (1)
48/// User defined local variable declared by <see cref="ForEachStatementSyntax"/> or <see cref="ForEachVariableStatementSyntax"/>.
Symbols\Source\SourceLocalSymbol.cs (2)
693Debug.Assert(this.ScopeBinder.GetBinder((ForEachVariableStatementSyntax)_deconstruction) == _nodeBinder); 714return ((ForEachVariableStatementSyntax)_deconstruction).Variable;
Syntax\ForEachVariableStatementSyntax.cs (4)
11public ForEachVariableStatementSyntax Update(SyntaxToken forEachKeyword, SyntaxToken openParenToken, ExpressionSyntax variable, SyntaxToken inKeyword, ExpressionSyntax expression, SyntaxToken closeParenToken, StatementSyntax statement) 14public ForEachVariableStatementSyntax Update(SyntaxToken awaitKeyword, SyntaxToken forEachKeyword, SyntaxToken openParenToken, ExpressionSyntax variable, SyntaxToken inKeyword, ExpressionSyntax expression, SyntaxToken closeParenToken, StatementSyntax statement) 23public static ForEachVariableStatementSyntax ForEachVariableStatement(SyntaxToken forEachKeyword, SyntaxToken openParenToken, ExpressionSyntax variable, SyntaxToken inKeyword, ExpressionSyntax expression, SyntaxToken closeParenToken, StatementSyntax statement) 26public static ForEachVariableStatementSyntax ForEachVariableStatement(SyntaxToken awaitKeyword, SyntaxToken forEachKeyword, SyntaxToken openParenToken, ExpressionSyntax variable, SyntaxToken inKeyword, ExpressionSyntax expression, SyntaxToken closeParenToken, StatementSyntax statement)
Syntax\SyntaxExtensions.cs (1)
373if ((object)((ForEachVariableStatementSyntax)parent).Variable == expr)
Microsoft.CodeAnalysis.CSharp.CodeStyle (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ExpressionSyntaxExtensions.cs (1)
307if (((ForEachVariableStatementSyntax)parent).Variable == expr)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SyntaxNodeExtensions.cs (1)
844(current is ForEachVariableStatementSyntax @foreach && previous == @foreach.Variable))
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SemanticFacts\CSharpSemanticFacts.cs (2)
211if (node is ForEachVariableStatementSyntax @foreach) 278ForEachVariableStatementSyntax _ when token.Kind() == SyntaxKind.InKeyword => GetDeconstructionForEachMethods(semanticModel, node).As<ISymbol>(),
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpSyntaxFacts.cs (2)
211=> node is ForEachVariableStatementSyntax; 224ForEachVariableStatementSyntax @foreach => @foreach.Variable.GetLocation(),
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\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpTypeStyleHelper.cs (1)
132case ForEachVariableStatementSyntax forEachVariableStatement:
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (3)
src\Analyzers\CSharp\CodeFixes\GenerateMethod\GenerateDeconstructMethodCodeFixProvider.cs (1)
71case ForEachVariableStatementSyntax @foreach:
src\Analyzers\CSharp\CodeFixes\MakeStatementAsynchronous\CSharpMakeStatementAsynchronousCodeFixProvider.cs (1)
74case ForEachVariableStatementSyntax forEachDeconstruction:
src\Analyzers\CSharp\CodeFixes\UseDeconstruction\CSharpUseDeconstructionCodeFixProvider.cs (1)
116private ForEachVariableStatementSyntax CreateForEachVariableStatement(INamedTypeSymbol tupleType, ForEachStatementSyntax forEachStatement)
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (11)
CodeGen\CodeGenAwaitForeachTests.cs (6)
4646var foreachSyntax = tree.GetRoot().DescendantNodes().OfType<ForEachVariableStatementSyntax>().Single(); 4745var foreachSyntax = tree.GetRoot().DescendantNodes().OfType<ForEachVariableStatementSyntax>().Single(); 9393var foreachSyntax = tree.GetRoot().DescendantNodes().OfType<ForEachVariableStatementSyntax>().Single();
CodeGen\CodeGenDeconstructTests.cs (5)
311var foreachDeconstruction = (ForEachVariableStatementSyntax)tree.FindNodeOrTokenByKind(SyntaxKind.ForEachVariableStatement).AsNode(); 4042var deconstructionForeach = tree.GetRoot().DescendantNodes().OfType<ForEachVariableStatementSyntax>().Single(); 4405var collection = tree.GetRoot().DescendantNodes().OfType<ForEachVariableStatementSyntax>().Single().Expression;
Microsoft.CodeAnalysis.CSharp.Features (14)
Completion\CompletionProviders\DeclarationName\DeclarationNameInfo.cs (1)
408f is ForEachVariableStatementSyntax forEachVariableStatement ? forEachVariableStatement.Variable :
Completion\KeywordRecommenders\InKeywordRecommender.cs (1)
73var statement = token.GetAncestor<ForEachVariableStatementSyntax>();
Debugging\CSharpProximityExpressionsService.RelevantExpressionsCollector.cs (1)
68public override void VisitForEachVariableStatement(ForEachVariableStatementSyntax node)
EditAndContinue\BreakpointSpans.cs (1)
681return ((ForEachVariableStatementSyntax)statement).Variable.Span;
EditAndContinue\CSharpEditAndContinueAnalyzer.cs (4)
357private static TextSpan GetActiveSpan(ForEachVariableStatementSyntax node, ForEachPart part) 622span = GetActiveSpan((ForEachVariableStatementSyntax)node, (ForEachPart)statementPart); 907case SyntaxKind.ForEachVariableStatement: return AreEquivalentIgnoringLambdaBodies(((ForEachVariableStatementSyntax)oldNode).Variable, ((ForEachVariableStatementSyntax)newNode).Variable);
EditAndContinue\SyntaxComparer.cs (2)
1309var forEachVariable = (ForEachVariableStatementSyntax)commonForEach;
ExtractMethod\CSharpMethodExtractor.CSharpCodeGenerator.CallSiteContainerRewriter.cs (1)
226public override SyntaxNode VisitForEachVariableStatement(ForEachVariableStatementSyntax node)
src\Analyzers\CSharp\CodeFixes\GenerateMethod\GenerateDeconstructMethodCodeFixProvider.cs (1)
71case ForEachVariableStatementSyntax @foreach:
src\Analyzers\CSharp\CodeFixes\MakeStatementAsynchronous\CSharpMakeStatementAsynchronousCodeFixProvider.cs (1)
74case ForEachVariableStatementSyntax forEachDeconstruction:
src\Analyzers\CSharp\CodeFixes\UseDeconstruction\CSharpUseDeconstructionCodeFixProvider.cs (1)
116private ForEachVariableStatementSyntax CreateForEachVariableStatement(INamedTypeSymbol tupleType, ForEachStatementSyntax forEachStatement)
Microsoft.CodeAnalysis.CSharp.IOperation.UnitTests (6)
IOperation\IOperationTests_IForEachLoopStatement.cs (5)
1119VerifyOperationTreeAndDiagnosticsForTest<ForEachVariableStatementSyntax>(source, expectedOperationTree, expectedDiagnostics); 1164VerifyOperationTreeAndDiagnosticsForTest<ForEachVariableStatementSyntax>(source, expectedOperationTree, expectedDiagnostics); 1372VerifyOperationTreeAndDiagnosticsForTest<ForEachVariableStatementSyntax>(source, expectedOperationTree, expectedDiagnostics); 1421VerifyOperationTreeAndDiagnosticsForTest<ForEachVariableStatementSyntax>(source, expectedOperationTree, expectedDiagnostics); 1461VerifyOperationTreeAndDiagnosticsForTest<ForEachVariableStatementSyntax>(source, expectedOperationTree, expectedDiagnostics);
IOperation\IOperationTests_ITupleExpression.cs (1)
1227VerifyOperationTreeAndDiagnosticsForTest<ForEachVariableStatementSyntax>(source, expectedOperationTree, expectedDiagnostics);
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (3)
Semantics\DeconstructionTests.cs (2)
3479VerifyOperationTreeAndDiagnosticsForTest<ForEachVariableStatementSyntax>(source, expectedOperationTree, expectedDiagnostics); 3531VerifyOperationTreeAndDiagnosticsForTest<ForEachVariableStatementSyntax>(source, expectedOperationTree, expectedDiagnostics);
Semantics\InterpolationTests.cs (1)
18297VerifyOperationTreeForTest<ForEachVariableStatementSyntax>(comp, expectedOperationTree: """
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (1)
SymbolDisplay\SymbolDisplayTests.cs (1)
7909var variable = tree.GetRoot().DescendantNodes().OfType<ForEachVariableStatementSyntax>().Single().Variable;
Microsoft.CodeAnalysis.CSharp.Syntax.UnitTests (5)
Generated\Syntax.Test.xml.Generated.cs (5)
10619private static ForEachVariableStatementSyntax GenerateForEachVariableStatement() 12535var node = GenerateForEachVariableStatement(); 12546var newNode = node.WithAttributeLists(node.AttributeLists).WithAwaitKeyword(node.AwaitKeyword).WithForEachKeyword(node.ForEachKeyword).WithOpenParenToken(node.OpenParenToken).WithVariable(node.Variable).WithInKeyword(node.InKeyword).WithExpression(node.Expression).WithCloseParenToken(node.CloseParenToken).WithStatement(node.Statement); 17479var oldNode = GenerateForEachVariableStatement(); 17495var oldNode = GenerateForEachVariableStatement();
Microsoft.CodeAnalysis.CSharp.Workspaces (9)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ExpressionSyntaxExtensions.cs (1)
307if (((ForEachVariableStatementSyntax)parent).Variable == expr)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SyntaxNodeExtensions.cs (1)
844(current is ForEachVariableStatementSyntax @foreach && previous == @foreach.Variable))
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SemanticFacts\CSharpSemanticFacts.cs (2)
211if (node is ForEachVariableStatementSyntax @foreach) 278ForEachVariableStatementSyntax _ when token.Kind() == SyntaxKind.InKeyword => GetDeconstructionForEachMethods(semanticModel, node).As<ISymbol>(),
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpSyntaxFacts.cs (2)
211=> node is ForEachVariableStatementSyntax; 224ForEachVariableStatementSyntax @foreach => @foreach.Variable.GetLocation(),
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\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpTypeStyleHelper.cs (1)
132case ForEachVariableStatementSyntax forEachVariableStatement: