7 writes to CollectionType
Microsoft.CodeAnalysis.CSharp (7)
Binder\ForEachLoopBinder.cs (7)
888builder.CollectionType = collectionExpr.Type; 1047builder.CollectionType = builder.GetEnumeratorInfo.Method.Parameters[0].Type; 1051builder.CollectionType = builder.GetEnumeratorInfo.Method.ContainingType.ExtensionParameter.Type; 1056builder.CollectionType = collectionExpr.Type; 1103builder.CollectionType = unwrappedCollectionExprType; 1316builder.CollectionType = GetSpecialType(SpecialType.System_Collections_IEnumerable, diagnostics, syntax); 1846builder.CollectionType = implementedIEnumerable;
12 references to CollectionType
Microsoft.CodeAnalysis.CSharp (12)
Binder\ForEachEnumeratorInfo.cs (3)
127Debug.Assert((object)CollectionType != null, $"'{nameof(CollectionType)}' cannot be null"); 135CollectionType,
Binder\ForEachLoopBinder.cs (9)
536Conversion collectionConversionClassification = this.Conversions.ClassifyConversionFromExpression(collectionExpr, builder.CollectionType, isChecked: CheckOverflowAtRuntime, ref useSiteInfo); 565BoundExpression convertedCollectionExpression = ConvertForEachCollection(collectionExpr, collectionConversionClassification, builder.CollectionType, diagnostics); 587(IsIEnumerable(builder.CollectionType) || 588IsIEnumerableT(builder.CollectionType.OriginalDefinition, IsAsync, Compilation) || 700else if (collectionExpr.Type.SpecialType == SpecialType.System_String && builder.CollectionType.SpecialType == SpecialType.System_Collections_IEnumerable) 887Debug.Assert(builder.CollectionType == (object)spanType); 1097Debug.Assert((object)builder.CollectionType != null); 1099NamedTypeSymbol collectionType = (NamedTypeSymbol)builder.CollectionType; 1269if (implementsInterface(builder.CollectionType, enumeratorType, isAsync, diagnostics))