1 write to EnumeratorInfoOpt
Microsoft.CodeAnalysis.CSharp (1)
Generated\BoundNodes.xml.Generated.cs (1)
4047this.EnumeratorInfoOpt = enumeratorInfoOpt;
18 references to EnumeratorInfoOpt
Microsoft.CodeAnalysis.CSharp (18)
Binder\RefSafetyAnalysis.cs (2)
1047if (node.EnumeratorInfoOpt is { InlineArraySpanType: not WellKnownType.Unknown and var spanType, InlineArrayUsedAsValue: false }) 1055resultType: node.EnumeratorInfoOpt.GetEnumeratorInfo.Method.ContainingType,
Compilation\MemberSemanticModel.cs (1)
950ForEachEnumeratorInfo enumeratorInfoOpt = boundForEach.EnumeratorInfoOpt;
FlowAnalysis\NullableWalker.cs (3)
6682if (node is BoundForEachStatement { EnumeratorInfoOpt: { GetEnumeratorInfo: { Method: { TypeArgumentsWithAnnotations: { IsEmpty: false } } } } }) 10855node.EnumeratorInfoOpt, 11070var sourceState = node.EnumeratorInfoOpt == null ? default : ResultType;
FlowAnalysis\NullableWalker.DebugVerifier.cs (2)
220if (node.EnumeratorInfoOpt != null) 222VisitForEachEnumeratorInfo(node.EnumeratorInfoOpt);
Generated\BoundNodes.xml.Generated.cs (4)
4075if (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)) 11397return node.Update(node.EnumeratorInfoOpt, elementPlaceholder, elementConversion, iterationVariableType, node.IterationVariables, iterationErrorExpressionOpt, expression, deconstructionOpt, awaitOpt, body, node.BreakLabel, node.ContinueLabel); 13440return node.Update(node.EnumeratorInfoOpt, elementPlaceholder, elementConversion, iterationVariableType, iterationVariables, iterationErrorExpressionOpt, expression, deconstructionOpt, awaitOpt, body, node.BreakLabel, node.ContinueLabel); 15872new TreeDumperNode("enumeratorInfoOpt", node.EnumeratorInfoOpt, null),
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (4)
56else if (node.EnumeratorInfoOpt is { InlineArraySpanType: not WellKnownType.Unknown }) 115ForEachEnumeratorInfo? enumeratorInfo = node.EnumeratorInfoOpt; 575Debug.Assert(node.EnumeratorInfoOpt is not null); 583node.EnumeratorInfoOpt,
Operations\CSharpOperationFactory.cs (2)
1889ForEachEnumeratorInfo? enumeratorInfoOpt = boundForEachStatement.EnumeratorInfoOpt; 1977IOperation collection = Create(boundForEachStatement.EnumeratorInfoOpt?.InlineArraySpanType is null or WellKnownType.Unknown ||