1 write to EnumeratorInfoOpt
Microsoft.CodeAnalysis.CSharp (1)
Generated\BoundNodes.xml.Generated.cs (1)
4039
this.
EnumeratorInfoOpt
= enumeratorInfoOpt;
54 references to EnumeratorInfoOpt
Microsoft.CodeAnalysis.CSharp (18)
Binder\RefSafetyAnalysis.cs (2)
1111
if (node.
EnumeratorInfoOpt
is { InlineArraySpanType: not WellKnownType.Unknown and var spanType, InlineArrayUsedAsValue: false })
1119
resultType: node.
EnumeratorInfoOpt
.GetEnumeratorInfo.Method.ContainingType,
Compilation\MemberSemanticModel.cs (1)
951
ForEachEnumeratorInfo enumeratorInfoOpt = boundForEach.
EnumeratorInfoOpt
;
FlowAnalysis\NullableWalker.cs (3)
7102
if (node is BoundForEachStatement {
EnumeratorInfoOpt
: { GetEnumeratorInfo: { Method: { TypeArgumentsWithAnnotations: { IsEmpty: false } } } } })
11544
node.
EnumeratorInfoOpt
,
11759
var sourceState = node.
EnumeratorInfoOpt
== null ? default : ResultType;
FlowAnalysis\NullableWalker.DebugVerifier.cs (2)
218
if (node.
EnumeratorInfoOpt
!= null)
220
VisitForEachEnumeratorInfo(node.
EnumeratorInfoOpt
);
Generated\BoundNodes.xml.Generated.cs (4)
4067
if (enumeratorInfoOpt != this.
EnumeratorInfoOpt
|| elementPlaceholder != this.ElementPlaceholder || elementConversion != this.ElementConversion || iterationVariableType != this.IterationVariableType || iterationVariables != this.IterationVariables || iterationErrorExpressionOpt != this.IterationErrorExpressionOpt || expression != this.Expression || deconstructionOpt != this.DeconstructionOpt || awaitOpt != this.AwaitOpt || body != this.Body || !Symbols.SymbolEqualityComparer.ConsiderEverything.Equals(breakLabel, this.BreakLabel) || !Symbols.SymbolEqualityComparer.ConsiderEverything.Equals(continueLabel, this.ContinueLabel))
11496
return node.Update(node.
EnumeratorInfoOpt
, elementPlaceholder, elementConversion, iterationVariableType, iterationVariables, iterationErrorExpressionOpt, expression, deconstructionOpt, awaitOpt, body, breakLabel, continueLabel);
13592
return node.Update(node.
EnumeratorInfoOpt
, elementPlaceholder, elementConversion, iterationVariableType, iterationVariables, iterationErrorExpressionOpt, expression, deconstructionOpt, awaitOpt, body, node.BreakLabel, node.ContinueLabel);
16025
new TreeDumperNode("enumeratorInfoOpt", node.
EnumeratorInfoOpt
, null),
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (4)
57
else if (node.
EnumeratorInfoOpt
is { InlineArraySpanType: not WellKnownType.Unknown })
116
ForEachEnumeratorInfo? enumeratorInfo = node.
EnumeratorInfoOpt
;
562
Debug.Assert(node.
EnumeratorInfoOpt
is not null);
570
node.
EnumeratorInfoOpt
,
Operations\CSharpOperationFactory.cs (2)
1889
ForEachEnumeratorInfo? enumeratorInfoOpt = boundForEachStatement.
EnumeratorInfoOpt
;
1977
IOperation collection = Create(boundForEachStatement.
EnumeratorInfoOpt
?.InlineArraySpanType is null or WellKnownType.Unknown ||
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (12)
CodeGen\CodeGenAwaitForeachTests.cs (12)
1674
ForEachEnumeratorInfo internalInfo = boundNode.
EnumeratorInfoOpt
;
2977
ForEachEnumeratorInfo internalInfo = boundNode.
EnumeratorInfoOpt
;
3296
ForEachEnumeratorInfo internalInfo = boundNode.
EnumeratorInfoOpt
;
3354
ForEachEnumeratorInfo internalInfo = boundNode.
EnumeratorInfoOpt
;
3550
ForEachEnumeratorInfo internalInfo = boundNode.
EnumeratorInfoOpt
;
3598
ForEachEnumeratorInfo internalInfo = boundNode.
EnumeratorInfoOpt
;
3731
ForEachEnumeratorInfo internalInfo = boundNode.
EnumeratorInfoOpt
;
4479
ForEachEnumeratorInfo internalInfo = boundNode.
EnumeratorInfoOpt
;
4552
ForEachEnumeratorInfo internalInfo = boundNode.
EnumeratorInfoOpt
;
4662
ForEachEnumeratorInfo internalInfo = boundNode.
EnumeratorInfoOpt
;
5065
ForEachEnumeratorInfo internalInfo = boundNode.
EnumeratorInfoOpt
;
5146
ForEachEnumeratorInfo internalInfo = boundNode.
EnumeratorInfoOpt
;
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (24)
Semantics\ForEachTests.cs (24)
1205
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
1243
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
1287
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
1331
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
1364
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
1404
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
1446
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
1485
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
1518
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
1549
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
1590
Assert.NotNull(boundNode.
EnumeratorInfoOpt
);
1614
Assert.NotNull(boundNode.
EnumeratorInfoOpt
);
1635
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
1666
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
1699
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
1740
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
1824
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
1871
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
1936
Assert.Null(boundNode.
EnumeratorInfoOpt
);
3115
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
3161
var enumeratorInfo = boundNode.
EnumeratorInfoOpt
;
3200
var enumeratorInfo = boundNode.
EnumeratorInfoOpt
;
3233
ForEachEnumeratorInfo info = boundNode.
EnumeratorInfoOpt
;
3267
ForEachEnumeratorInfo enumeratorInfo = boundNode.
EnumeratorInfoOpt
;