22 references to SynthesizedReadOnlyListKind
Microsoft.CodeAnalysis.CSharp (22)
Emitter\Model\PEModuleBuilder.cs (2)
54
private readonly NamedTypeSymbol[] _readOnlyListTypes = new NamedTypeSymbol[(int)
SynthesizedReadOnlyListKind
.List + 1];
2143
internal NamedTypeSymbol EnsureReadOnlyListTypeExists(SyntaxNode syntaxNode,
SynthesizedReadOnlyListKind
kind, DiagnosticBag diagnostics)
Lowering\LocalRewriter\LocalRewriter_CollectionExpression.cs (7)
563
var
kind = useKnownLength
565
?
SynthesizedReadOnlyListKind
.SingleElement
566
:
SynthesizedReadOnlyListKind
.Array
567
:
SynthesizedReadOnlyListKind
.List;
577
SynthesizedReadOnlyListKind
.SingleElement => this.VisitExpression((BoundExpression)elements.Single()),
579
SynthesizedReadOnlyListKind
.Array => createArray(node, ArrayTypeSymbol.CreateSZArray(_compilation.Assembly, elementType)),
581
SynthesizedReadOnlyListKind
.List => CreateAndPopulateList(
Symbols\Synthesized\GeneratedNames.cs (4)
474
internal static string MakeSynthesizedReadOnlyListName(
SynthesizedReadOnlyListKind
kind, int generation)
479
SynthesizedReadOnlyListKind
.Array => WellKnownGeneratedNames.SynthesizedReadOnlyList_ReadOnlyArrayPrefix,
480
SynthesizedReadOnlyListKind
.List => WellKnownGeneratedNames.SynthesizedReadOnlyList_ReadOnlyListPrefix,
481
SynthesizedReadOnlyListKind
.SingleElement => WellKnownGeneratedNames.SynthesizedReadOnlyList_SingleElementPrefix,
Symbols\Synthesized\ReadOnlyListType\SynthesizedReadOnlyListTypeSymbol.cs (9)
129
internal static NamedTypeSymbol Create(SourceModuleSymbol containingModule, string name,
SynthesizedReadOnlyListKind
kind)
207
if (kind ==
SynthesizedReadOnlyListKind
.List)
267
private SynthesizedReadOnlyListTypeSymbol(SourceModuleSymbol containingModule, string name,
SynthesizedReadOnlyListKind
kind, bool hasReadOnlyInterfaces)
279
SynthesizedReadOnlyListKind
.SingleElement => typeParameter,
280
SynthesizedReadOnlyListKind
.Array => compilation.CreateArrayTypeSymbol(elementType: typeParameter),
281
SynthesizedReadOnlyListKind
.List => compilation.GetWellKnownType(WellKnownType.System_Collections_Generic_List_T).Construct(typeArgs),
285
_enumeratorType = kind ==
SynthesizedReadOnlyListKind
.SingleElement ? new SynthesizedReadOnlyListEnumeratorTypeSymbol(this, typeParameter) : null;
289
kind ==
SynthesizedReadOnlyListKind
.SingleElement
325
new SynthesizedReadOnlyListConstructor(this, fieldType, kind ==
SynthesizedReadOnlyListKind
.SingleElement ? "item" : "items"));