4 writes to GetEnumeratorInfo
Microsoft.CodeAnalysis.CSharp (4)
Binder\ForEachLoopBinder.cs (4)
1130builder.GetEnumeratorInfo = BindDefaultArguments( 1180builder.GetEnumeratorInfo = GetParameterlessSpecialTypeMemberInfo(SpecialMember.System_Collections_IEnumerable__GetEnumerator, errorLocationSyntax, diagnostics); 1312builder.GetEnumeratorInfo = GetParameterlessSpecialTypeMemberInfo(SpecialMember.System_Collections_IEnumerable__GetEnumerator, syntax, diagnostics); 1350builder.GetEnumeratorInfo = getEnumeratorInfo;
28 references to GetEnumeratorInfo
Microsoft.CodeAnalysis.CSharp (28)
Binder\ForEachEnumeratorInfo.cs (4)
129Debug.Assert(GetEnumeratorInfo != null, $"'{nameof(GetEnumeratorInfo)}' cannot be null"); 139GetEnumeratorInfo, 153=> GetEnumeratorInfo is null || MoveNextInfo is null || CurrentPropertyGetter is null;
Binder\ForEachLoopBinder.cs (24)
234MethodSymbol getEnumeratorMethod = builder.GetEnumeratorInfo?.Method; 589builder.GetEnumeratorInfo.Method.IsExtensionMethod || 590builder.GetEnumeratorInfo.Method.IsExtensionBlockMember())) || 882Debug.Assert(!builder.ViaExtensionMethod || builder.GetEnumeratorInfo.Method.IsExtensionMethod || builder.GetEnumeratorInfo.Method.IsExtensionBlockMember()); 929Debug.Assert(!builder.ViaExtensionMethod || builder.GetEnumeratorInfo.Method.IsExtensionMethod || builder.GetEnumeratorInfo.Method.IsExtensionBlockMember()); 1029Debug.Assert((object)builder.GetEnumeratorInfo != null); 1031Debug.Assert(!(viaExtensionMethod && builder.GetEnumeratorInfo.Method.IsExtensionMethod && builder.GetEnumeratorInfo.Method.Parameters.IsDefaultOrEmpty)); 1032Debug.Assert(!(viaExtensionMethod && !builder.GetEnumeratorInfo.Method.IsExtensionMethod && !builder.GetEnumeratorInfo.Method.IsExtensionBlockMember())); 1038if (builder.GetEnumeratorInfo.Method.IsExtensionMethod) 1040builder.CollectionType = builder.GetEnumeratorInfo.Method.Parameters[0].Type; 1044builder.CollectionType = builder.GetEnumeratorInfo.Method.ContainingType.ExtensionParameter.Type; 1061MethodSymbol getEnumeratorMethod = builder.GetEnumeratorInfo.Method; 1185Debug.Assert((object)builder.GetEnumeratorInfo == null || 1186builder.GetEnumeratorInfo.Method.ReturnType.SpecialType == SpecialType.System_Collections_IEnumerator); 1201TypeSymbol enumeratorType = builder.GetEnumeratorInfo.Method.ReturnType; 1316Debug.Assert((object)builder.GetEnumeratorInfo == null || 1317TypeSymbol.Equals(builder.GetEnumeratorInfo.Method.ReturnType, this.Compilation.GetSpecialType(SpecialType.System_Collections_IEnumerator), TypeCompareKind.ConsiderEverything2)); 1330/// <param name="builder">Builder to fill in. <see cref="ForEachEnumeratorInfo.Builder.GetEnumeratorInfo"/> set if the pattern in satisfied.</param> 1634Debug.Assert((object)builder.GetEnumeratorInfo.Method != null); 1636MethodSymbol getEnumeratorMethod = builder.GetEnumeratorInfo.Method;