2 types derived from CommonForEachStatementSyntax
Microsoft.CodeAnalysis.CSharp (2)
Syntax.xml.Syntax.Generated.cs (2)
7723
public sealed partial class ForEachStatementSyntax :
CommonForEachStatementSyntax
7827
public sealed partial class ForEachVariableStatementSyntax :
CommonForEachStatementSyntax
175 references to CommonForEachStatementSyntax
Microsoft.CodeAnalysis.CSharp (64)
Binder\Binder_Statements.cs (2)
92
result = BindForEach((
CommonForEachStatementSyntax
)node, diagnostics);
2926
private BoundStatement BindForEach(
CommonForEachStatementSyntax
node, BindingDiagnosticBag diagnostics)
Binder\ForEachLoopBinder.cs (2)
28
private readonly
CommonForEachStatementSyntax
_syntax;
40
public ForEachLoopBinder(Binder enclosing,
CommonForEachStatementSyntax
syntax)
Binder\LocalBinderFactory.cs (1)
640
private void VisitCommonForEachStatement(
CommonForEachStatementSyntax
node)
Compilation\CSharpSemanticModel.cs (1)
4824
public abstract ForEachStatementInfo GetForEachStatementInfo(
CommonForEachStatementSyntax
node);
Compilation\MemberSemanticModel.cs (4)
417
var
foreachStmt = (
CommonForEachStatementSyntax
)stmt;
971
return GetForEachStatementInfo((
CommonForEachStatementSyntax
)node);
974
public override ForEachStatementInfo GetForEachStatementInfo(
CommonForEachStatementSyntax
node)
Compilation\SpeculativeSemanticModelWithMemberModel.cs (1)
415
public override ForEachStatementInfo GetForEachStatementInfo(
CommonForEachStatementSyntax
node)
Compilation\SyntaxTreeSemanticModel.cs (1)
2431
public override ForEachStatementInfo GetForEachStatementInfo(
CommonForEachStatementSyntax
node)
CSharpExtensions.cs (1)
904
public static ForEachStatementInfo GetForEachStatementInfo(this SemanticModel? semanticModel,
CommonForEachStatementSyntax
forEachStatement)
FlowAnalysis\AbstractFlowPass.cs (1)
2909
if (AwaitUsingAndForeachAddsPendingBranch && ((
CommonForEachStatementSyntax
)node.Syntax).AwaitKeyword != default)
Lowering\Instrumentation\DebugInfoInjector.cs (6)
271
var
forEachSyntax = (
CommonForEachStatementSyntax
)original.Syntax;
292
var
forEachSyntax = (
CommonForEachStatementSyntax
)original.Syntax;
345
var
syntax = (
CommonForEachStatementSyntax
)original.Syntax;
Lowering\Instrumentation\Instrumenter.cs (3)
146
Debug.Assert(original.Syntax is
CommonForEachStatementSyntax
);
152
Debug.Assert(original.Syntax is
CommonForEachStatementSyntax
);
173
Debug.Assert(original.Syntax is
CommonForEachStatementSyntax
);
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (2)
1278
CommonForEachStatementSyntax
forEachSyntax = (
CommonForEachStatementSyntax
)original.Syntax;
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (1)
673
SynthesizedLocalKind.ForEachArray => awaitSyntax is
CommonForEachStatementSyntax
,
Syntax.xml.Syntax.Generated.cs (32)
7685
public
CommonForEachStatementSyntax
WithAwaitKeyword(SyntaxToken awaitKeyword) => WithAwaitKeywordCore(awaitKeyword);
7686
internal abstract
CommonForEachStatementSyntax
WithAwaitKeywordCore(SyntaxToken awaitKeyword);
7689
public
CommonForEachStatementSyntax
WithForEachKeyword(SyntaxToken forEachKeyword) => WithForEachKeywordCore(forEachKeyword);
7690
internal abstract
CommonForEachStatementSyntax
WithForEachKeywordCore(SyntaxToken forEachKeyword);
7693
public
CommonForEachStatementSyntax
WithOpenParenToken(SyntaxToken openParenToken) => WithOpenParenTokenCore(openParenToken);
7694
internal abstract
CommonForEachStatementSyntax
WithOpenParenTokenCore(SyntaxToken openParenToken);
7697
public
CommonForEachStatementSyntax
WithInKeyword(SyntaxToken inKeyword) => WithInKeywordCore(inKeyword);
7698
internal abstract
CommonForEachStatementSyntax
WithInKeywordCore(SyntaxToken inKeyword);
7701
public
CommonForEachStatementSyntax
WithExpression(ExpressionSyntax expression) => WithExpressionCore(expression);
7702
internal abstract
CommonForEachStatementSyntax
WithExpressionCore(ExpressionSyntax expression);
7705
public
CommonForEachStatementSyntax
WithCloseParenToken(SyntaxToken closeParenToken) => WithCloseParenTokenCore(closeParenToken);
7706
internal abstract
CommonForEachStatementSyntax
WithCloseParenTokenCore(SyntaxToken closeParenToken);
7709
public
CommonForEachStatementSyntax
WithStatement(StatementSyntax statement) => WithStatementCore(statement);
7710
internal abstract
CommonForEachStatementSyntax
WithStatementCore(StatementSyntax statement);
7712
public new
CommonForEachStatementSyntax
WithAttributeLists(SyntaxList<AttributeListSyntax> attributeLists) => (
CommonForEachStatementSyntax
)WithAttributeListsCore(attributeLists);
7714
public new
CommonForEachStatementSyntax
AddAttributeLists(params AttributeListSyntax[] items) => (
CommonForEachStatementSyntax
)AddAttributeListsCore(items);
7800
internal override
CommonForEachStatementSyntax
WithAwaitKeywordCore(SyntaxToken awaitKeyword) => WithAwaitKeyword(awaitKeyword);
7802
internal override
CommonForEachStatementSyntax
WithForEachKeywordCore(SyntaxToken forEachKeyword) => WithForEachKeyword(forEachKeyword);
7804
internal override
CommonForEachStatementSyntax
WithOpenParenTokenCore(SyntaxToken openParenToken) => WithOpenParenToken(openParenToken);
7808
internal override
CommonForEachStatementSyntax
WithInKeywordCore(SyntaxToken inKeyword) => WithInKeyword(inKeyword);
7810
internal override
CommonForEachStatementSyntax
WithExpressionCore(ExpressionSyntax expression) => WithExpression(expression);
7812
internal override
CommonForEachStatementSyntax
WithCloseParenTokenCore(SyntaxToken closeParenToken) => WithCloseParenToken(closeParenToken);
7814
internal override
CommonForEachStatementSyntax
WithStatementCore(StatementSyntax statement) => WithStatement(statement);
7907
internal override
CommonForEachStatementSyntax
WithAwaitKeywordCore(SyntaxToken awaitKeyword) => WithAwaitKeyword(awaitKeyword);
7909
internal override
CommonForEachStatementSyntax
WithForEachKeywordCore(SyntaxToken forEachKeyword) => WithForEachKeyword(forEachKeyword);
7911
internal override
CommonForEachStatementSyntax
WithOpenParenTokenCore(SyntaxToken openParenToken) => WithOpenParenToken(openParenToken);
7914
internal override
CommonForEachStatementSyntax
WithInKeywordCore(SyntaxToken inKeyword) => WithInKeyword(inKeyword);
7916
internal override
CommonForEachStatementSyntax
WithExpressionCore(ExpressionSyntax expression) => WithExpression(expression);
7918
internal override
CommonForEachStatementSyntax
WithCloseParenTokenCore(SyntaxToken closeParenToken) => WithCloseParenToken(closeParenToken);
7920
internal override
CommonForEachStatementSyntax
WithStatementCore(StatementSyntax statement) => WithStatement(statement);
Syntax\LookupPosition.cs (2)
335
return ((
CommonForEachStatementSyntax
)statement).OpenParenToken.GetNextToken();
398
return GetFirstExcludedToken(((
CommonForEachStatementSyntax
)statement).Statement);
Syntax\SyntaxBindingUtilities.cs (2)
16
node is
CommonForEachStatementSyntax
{ AwaitKeyword.RawKind: not 0 }
23
or
CommonForEachStatementSyntax
Syntax\SyntaxFacts.cs (1)
553
case
CommonForEachStatementSyntax
@foreach when @foreach.AwaitKeyword.IsKind(SyntaxKind.AwaitKeyword):
Syntax\SyntaxNodeExtensions.cs (1)
132
return ((
CommonForEachStatementSyntax
)parent).Expression == expression;
Microsoft.CodeAnalysis.CSharp.CodeStyle (20)
src\Analyzers\CSharp\Analyzers\ForEachCast\CSharpForEachCastDiagnosticAnalyzer.cs (2)
18
CommonForEachStatementSyntax
>
27
SemanticModel semanticModel,
CommonForEachStatementSyntax
node)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ExpressionSyntaxExtensions.cs (1)
631
if (expression.CheckParent<
CommonForEachStatementSyntax
>(f => f.Expression == expression) ||
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
176
(nodeParent is
CommonForEachStatementSyntax
forEachStatement && forEachStatement.Expression == node) ||
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SyntaxNodeExtensions.cs (3)
121
CommonForEachStatementSyntax
or
136
CommonForEachStatementSyntax
n => n.Statement,
712
CommonForEachStatementSyntax
n => (n.OpenParenToken, n.CloseParenToken),
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\FormattingHelpers.cs (2)
299
CommonForEachStatementSyntax
foreachStatement => foreachStatement.CloseParenToken.Equals(token),
370
CommonForEachStatementSyntax
or
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SemanticFacts\CSharpSemanticFacts.cs (1)
180
if (node is not
CommonForEachStatementSyntax
forEachStatement)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpSyntaxFacts.cs (2)
1558
var
commonForeach = (
CommonForEachStatementSyntax
)statement;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (2)
1357
if (currentOld is
CommonForEachStatementSyntax
oldForEach &&
1358
currentNew is
CommonForEachStatementSyntax
newForEach)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\SpeculationAnalyzer.cs (6)
35
CommonForEachStatementSyntax
,
648
protected override ExpressionSyntax GetForEachStatementExpression(
CommonForEachStatementSyntax
forEachStatement)
654
protected override bool IsForEachTypeInferred(
CommonForEachStatementSyntax
forEachStatement, SemanticModel semanticModel)
877
protected override bool ForEachConversionsAreCompatible(SemanticModel originalModel,
CommonForEachStatementSyntax
originalForEach, SemanticModel newModel,
CommonForEachStatementSyntax
newForEach)
887
CommonForEachStatementSyntax
forEach,
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (3)
src\Analyzers\CSharp\CodeFixes\ForEachCast\CSharpForEachCastCodeFixProvider.cs (2)
17
internal sealed class CSharpForEachCastCodeFixProvider() : AbstractForEachCastCodeFixProvider<
CommonForEachStatementSyntax
>
20
SemanticModel semanticModel,
CommonForEachStatementSyntax
forEachStatement)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpMoveDeclarationNearReferenceService.cs (1)
36
CommonForEachStatementSyntax
or
Microsoft.CodeAnalysis.CSharp.EditorFeatures (4)
AutomaticCompletion\AutomaticLineEnderCommandHandler.cs (1)
323
or
CommonForEachStatementSyntax
AutomaticCompletion\AutomaticLineEnderCommandHandler_Helpers.cs (3)
477
CommonForEachStatementSyntax
commonForEachStatementNode => ShouldAddBraceForCommonForEachStatement(commonForEachStatementNode, caretPosition),
666
private static bool ShouldAddBraceForCommonForEachStatement(
CommonForEachStatementSyntax
commonForEachStatementNode, int caretPosition)
942
CommonForEachStatementSyntax
forEachStatementNode => forEachStatementNode.WithStatement(block),
Microsoft.CodeAnalysis.CSharp.Features (39)
Completion\CompletionProviders\DeclarationName\DeclarationNameInfo.cs (1)
483
result = IsLastTokenOfType<
CommonForEachStatementSyntax
>(token, semanticModel,
Debugging\CSharpProximityExpressionsService.Worker.cs (1)
256
AddLastStatementOfConstruct((statement as
CommonForEachStatementSyntax
).Statement);
EditAndContinue\BreakpointSpans.cs (4)
668
var
forEachStatement = (
CommonForEachStatementSyntax
)statement;
989
var
forEachStatement = (
CommonForEachStatementSyntax
)parent;
EditAndContinue\CSharpEditAndContinueAnalyzer.cs (12)
222
statementPart = (int)GetStatementPart((
CommonForEachStatementSyntax
)node, position);
317
private static ForEachPart GetStatementPart(
CommonForEachStatementSyntax
node, int position)
788
return AreEquivalentActiveStatements((
CommonForEachStatementSyntax
)oldStatement, (
CommonForEachStatementSyntax
)newStatement);
873
private static bool AreEquivalentActiveStatements(
CommonForEachStatementSyntax
oldNode,
CommonForEachStatementSyntax
newNode)
888
private static bool AreSimilarActiveStatements(
CommonForEachStatementSyntax
oldNode,
CommonForEachStatementSyntax
newNode)
1820
var
commonForEachStatement = (
CommonForEachStatementSyntax
)node;
2268
Debug.Assert(((
CommonForEachStatementSyntax
)node).AwaitKeyword.IsKind(SyntaxKind.AwaitKeyword));
3051
ReportUnmatchedStatements<
CommonForEachStatementSyntax
>(
EditAndContinue\SyntaxComparer.cs (7)
800
var
leftForEach = (
CommonForEachStatementSyntax
)leftNode;
801
var
rightForEach = (
CommonForEachStatementSyntax
)rightNode;
1159
CommonForEachStatementSyntax
leftCommonForEach,
1160
CommonForEachStatementSyntax
rightCommonForEach)
1309
internal static void GetLocalNames(
CommonForEachStatementSyntax
commonForEach, ref List<SyntaxToken>? result)
EditAndContinue\SyntaxUtilities.cs (1)
236
/// <see cref="
CommonForEachStatementSyntax
"/> for await foreach statements,
ExtractMethod\CSharpSelectionValidator.Validator.cs (2)
36
CommonForEachStatementSyntax
or
64
CommonForEachStatementSyntax
or
Highlighting\KeywordHighlighters\AsyncAwaitHighlighter.cs (1)
79
CommonForEachStatementSyntax
forEachStatement => TryAddAsyncOrAwaitKeyword(forEachStatement.AwaitKeyword, spans),
Highlighting\KeywordHighlighters\LoopHighlighter.cs (2)
49
case
CommonForEachStatementSyntax
forEachStatement:
70
private static void HighlightForEachStatement(
CommonForEachStatementSyntax
statement, List<TextSpan> spans)
InvertIf\CSharpInvertIfCodeRefactoringProvider.cs (2)
83
case
CommonForEachStatementSyntax
:
110
CommonForEachStatementSyntax
or DoStatementSyntax or WhileStatementSyntax or ForStatementSyntax
src\Analyzers\CSharp\Analyzers\ForEachCast\CSharpForEachCastDiagnosticAnalyzer.cs (2)
18
CommonForEachStatementSyntax
>
27
SemanticModel semanticModel,
CommonForEachStatementSyntax
node)
src\Analyzers\CSharp\CodeFixes\ForEachCast\CSharpForEachCastCodeFixProvider.cs (2)
17
internal sealed class CSharpForEachCastCodeFixProvider() : AbstractForEachCastCodeFixProvider<
CommonForEachStatementSyntax
>
20
SemanticModel semanticModel,
CommonForEachStatementSyntax
forEachStatement)
src\Compilers\CSharp\Portable\Syntax\SyntaxBindingUtilities.cs (2)
16
node is
CommonForEachStatementSyntax
{ AwaitKeyword.RawKind: not 0 }
23
or
CommonForEachStatementSyntax
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (3)
Semantics\ForEachTests.cs (3)
3774
var
syntaxNode =
3775
(
CommonForEachStatementSyntax
)tree.FindNodeOrTokenByKind(SyntaxKind.ForEachStatement).AsNode() ??
3776
(
CommonForEachStatementSyntax
)tree.FindNodeOrTokenByKind(SyntaxKind.ForEachVariableStatement).AsNode();
Microsoft.CodeAnalysis.CSharp.Workspaces (20)
Rename\CSharpRenameRewriterLanguageService.cs (1)
976
return [((
CommonForEachStatementSyntax
)token.Parent!).Expression.GetLocation()];
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ExpressionSyntaxExtensions.cs (1)
631
if (expression.CheckParent<
CommonForEachStatementSyntax
>(f => f.Expression == expression) ||
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
176
(nodeParent is
CommonForEachStatementSyntax
forEachStatement && forEachStatement.Expression == node) ||
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SyntaxNodeExtensions.cs (3)
121
CommonForEachStatementSyntax
or
136
CommonForEachStatementSyntax
n => n.Statement,
712
CommonForEachStatementSyntax
n => (n.OpenParenToken, n.CloseParenToken),
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\FormattingHelpers.cs (2)
299
CommonForEachStatementSyntax
foreachStatement => foreachStatement.CloseParenToken.Equals(token),
370
CommonForEachStatementSyntax
or
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SemanticFacts\CSharpSemanticFacts.cs (1)
180
if (node is not
CommonForEachStatementSyntax
forEachStatement)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpSyntaxFacts.cs (2)
1558
var
commonForeach = (
CommonForEachStatementSyntax
)statement;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (2)
1357
if (currentOld is
CommonForEachStatementSyntax
oldForEach &&
1358
currentNew is
CommonForEachStatementSyntax
newForEach)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\SpeculationAnalyzer.cs (6)
35
CommonForEachStatementSyntax
,
648
protected override ExpressionSyntax GetForEachStatementExpression(
CommonForEachStatementSyntax
forEachStatement)
654
protected override bool IsForEachTypeInferred(
CommonForEachStatementSyntax
forEachStatement, SemanticModel semanticModel)
877
protected override bool ForEachConversionsAreCompatible(SemanticModel originalModel,
CommonForEachStatementSyntax
originalForEach, SemanticModel newModel,
CommonForEachStatementSyntax
newForEach)
887
CommonForEachStatementSyntax
forEach,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpMoveDeclarationNearReferenceService.cs (1)
36
CommonForEachStatementSyntax
or
Microsoft.CodeAnalysis.Test.Utilities (2)
Compilation\ControlFlowGraphVerifier.cs (2)
654
if (syntax.Parent is CSharp.Syntax.
CommonForEachStatementSyntax
forEach && forEach.Expression == syntax)
1137
if (((
CommonForEachStatementSyntax
)parent).Expression == syntax)
Roslyn.Diagnostics.CSharp.Analyzers (20)
CSharpDoNotCopyValue.cs (1)
35
if (operation.Syntax is
CommonForEachStatementSyntax
syntax
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ExpressionSyntaxExtensions.cs (1)
631
if (expression.CheckParent<
CommonForEachStatementSyntax
>(f => f.Expression == expression) ||
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
176
(nodeParent is
CommonForEachStatementSyntax
forEachStatement && forEachStatement.Expression == node) ||
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SyntaxNodeExtensions.cs (3)
121
CommonForEachStatementSyntax
or
136
CommonForEachStatementSyntax
n => n.Statement,
712
CommonForEachStatementSyntax
n => (n.OpenParenToken, n.CloseParenToken),
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Formatting\FormattingHelpers.cs (2)
299
CommonForEachStatementSyntax
foreachStatement => foreachStatement.CloseParenToken.Equals(token),
370
CommonForEachStatementSyntax
or
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SemanticFacts\CSharpSemanticFacts.cs (1)
180
if (node is not
CommonForEachStatementSyntax
forEachStatement)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpSyntaxFacts.cs (2)
1558
var
commonForeach = (
CommonForEachStatementSyntax
)statement;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (2)
1357
if (currentOld is
CommonForEachStatementSyntax
oldForEach &&
1358
currentNew is
CommonForEachStatementSyntax
newForEach)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\SpeculationAnalyzer.cs (6)
35
CommonForEachStatementSyntax
,
648
protected override ExpressionSyntax GetForEachStatementExpression(
CommonForEachStatementSyntax
forEachStatement)
654
protected override bool IsForEachTypeInferred(
CommonForEachStatementSyntax
forEachStatement, SemanticModel semanticModel)
877
protected override bool ForEachConversionsAreCompatible(SemanticModel originalModel,
CommonForEachStatementSyntax
originalForEach, SemanticModel newModel,
CommonForEachStatementSyntax
newForEach)
887
CommonForEachStatementSyntax
forEach,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpMoveDeclarationNearReferenceService.cs (1)
36
CommonForEachStatementSyntax
or