4 writes to GetEnumeratorInfo
Microsoft.CodeAnalysis.CSharp (4)
Binder\ForEachLoopBinder.cs (4)
1133builder.GetEnumeratorInfo = BindDefaultArguments( 1183builder.GetEnumeratorInfo = GetParameterlessSpecialTypeMemberInfo(SpecialMember.System_Collections_IEnumerable__GetEnumerator, errorLocationSyntax, diagnostics); 1315builder.GetEnumeratorInfo = GetParameterlessSpecialTypeMemberInfo(SpecialMember.System_Collections_IEnumerable__GetEnumerator, syntax, diagnostics); 1353builder.GetEnumeratorInfo = getEnumeratorInfo;
29 references to GetEnumeratorInfo
Microsoft.CodeAnalysis.CSharp (29)
Binder\ForEachEnumeratorInfo.cs (5)
129Debug.Assert(GetEnumeratorInfo != null, $"'{nameof(GetEnumeratorInfo)}' cannot be null"); 139GetEnumeratorInfo, 153=> GetEnumeratorInfo is null || MoveNextInfo is null || CurrentPropertyGetter is null; 157var getEnumeratorMethod = this.GetEnumeratorInfo?.Method;
Binder\ForEachLoopBinder.cs (24)
234MethodSymbol getEnumeratorMethod = builder.GetEnumeratorInfo?.Method; 591builder.GetEnumeratorInfo.Method.IsExtensionMethod || 592builder.GetEnumeratorInfo.Method.IsExtensionBlockMember())) || 885Debug.Assert(!builder.ViaExtensionMethod || builder.GetEnumeratorInfo.Method.IsExtensionMethod || builder.GetEnumeratorInfo.Method.IsExtensionBlockMember()); 932Debug.Assert(!builder.ViaExtensionMethod || builder.GetEnumeratorInfo.Method.IsExtensionMethod || builder.GetEnumeratorInfo.Method.IsExtensionBlockMember()); 1032Debug.Assert((object)builder.GetEnumeratorInfo != null); 1034Debug.Assert(!(viaExtensionMethod && builder.GetEnumeratorInfo.Method.IsExtensionMethod && builder.GetEnumeratorInfo.Method.Parameters.IsDefaultOrEmpty)); 1035Debug.Assert(!(viaExtensionMethod && !builder.GetEnumeratorInfo.Method.IsExtensionMethod && !builder.GetEnumeratorInfo.Method.IsExtensionBlockMember())); 1041if (builder.GetEnumeratorInfo.Method.IsExtensionMethod) 1043builder.CollectionType = builder.GetEnumeratorInfo.Method.Parameters[0].Type; 1047builder.CollectionType = builder.GetEnumeratorInfo.Method.ContainingType.ExtensionParameter.Type; 1064MethodSymbol getEnumeratorMethod = builder.GetEnumeratorInfo.Method; 1188Debug.Assert((object)builder.GetEnumeratorInfo == null || 1189builder.GetEnumeratorInfo.Method.ReturnType.SpecialType == SpecialType.System_Collections_IEnumerator); 1204TypeSymbol enumeratorType = builder.GetEnumeratorInfo.Method.ReturnType; 1319Debug.Assert((object)builder.GetEnumeratorInfo == null || 1320TypeSymbol.Equals(builder.GetEnumeratorInfo.Method.ReturnType, this.Compilation.GetSpecialType(SpecialType.System_Collections_IEnumerator), TypeCompareKind.ConsiderEverything2)); 1333/// <param name="builder">Builder to fill in. <see cref="ForEachEnumeratorInfo.Builder.GetEnumeratorInfo"/> set if the pattern in satisfied.</param> 1638Debug.Assert((object)builder.GetEnumeratorInfo.Method != null); 1640MethodSymbol getEnumeratorMethod = builder.GetEnumeratorInfo.Method;