4 writes to GetEnumeratorInfo
Microsoft.CodeAnalysis.CSharp (4)
Binder\ForEachLoopBinder.cs (4)
1132builder.GetEnumeratorInfo = BindDefaultArguments( 1182builder.GetEnumeratorInfo = GetParameterlessSpecialTypeMemberInfo(SpecialMember.System_Collections_IEnumerable__GetEnumerator, errorLocationSyntax, diagnostics); 1314builder.GetEnumeratorInfo = GetParameterlessSpecialTypeMemberInfo(SpecialMember.System_Collections_IEnumerable__GetEnumerator, syntax, diagnostics); 1352builder.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())) || 884Debug.Assert(!builder.ViaExtensionMethod || builder.GetEnumeratorInfo.Method.IsExtensionMethod || builder.GetEnumeratorInfo.Method.IsExtensionBlockMember()); 931Debug.Assert(!builder.ViaExtensionMethod || builder.GetEnumeratorInfo.Method.IsExtensionMethod || builder.GetEnumeratorInfo.Method.IsExtensionBlockMember()); 1031Debug.Assert((object)builder.GetEnumeratorInfo != null); 1033Debug.Assert(!(viaExtensionMethod && builder.GetEnumeratorInfo.Method.IsExtensionMethod && builder.GetEnumeratorInfo.Method.Parameters.IsDefaultOrEmpty)); 1034Debug.Assert(!(viaExtensionMethod && !builder.GetEnumeratorInfo.Method.IsExtensionMethod && !builder.GetEnumeratorInfo.Method.IsExtensionBlockMember())); 1040if (builder.GetEnumeratorInfo.Method.IsExtensionMethod) 1042builder.CollectionType = builder.GetEnumeratorInfo.Method.Parameters[0].Type; 1046builder.CollectionType = builder.GetEnumeratorInfo.Method.ContainingType.ExtensionParameter.Type; 1063MethodSymbol getEnumeratorMethod = builder.GetEnumeratorInfo.Method; 1187Debug.Assert((object)builder.GetEnumeratorInfo == null || 1188builder.GetEnumeratorInfo.Method.ReturnType.SpecialType == SpecialType.System_Collections_IEnumerator); 1203TypeSymbol enumeratorType = builder.GetEnumeratorInfo.Method.ReturnType; 1318Debug.Assert((object)builder.GetEnumeratorInfo == null || 1319TypeSymbol.Equals(builder.GetEnumeratorInfo.Method.ReturnType, this.Compilation.GetSpecialType(SpecialType.System_Collections_IEnumerator), TypeCompareKind.ConsiderEverything2)); 1332/// <param name="builder">Builder to fill in. <see cref="ForEachEnumeratorInfo.Builder.GetEnumeratorInfo"/> set if the pattern in satisfied.</param> 1636Debug.Assert((object)builder.GetEnumeratorInfo.Method != null); 1638MethodSymbol getEnumeratorMethod = builder.GetEnumeratorInfo.Method;