2 implementations of IArrayTypeReference
Microsoft.CodeAnalysis.CSharp (1)
Emitter\Model\ArrayTypeSymbolAdapter.cs (1)
20Cci.IArrayTypeReference
Microsoft.CodeAnalysis.VisualBasic (1)
Emit\ArrayTypeSymbolAdapter.vb (1)
17Implements Cci.IArrayTypeReference
62 references to IArrayTypeReference
Microsoft.CodeAnalysis (45)
CodeGen\ArrayMembers.cs (14)
73public ArrayMethod GetArrayConstructor(Cci.IArrayTypeReference arrayType) 81public ArrayMethod GetArrayGet(Cci.IArrayTypeReference arrayType) 87public ArrayMethod GetArraySet(Cci.IArrayTypeReference arrayType) 93public ArrayMethod GetArrayAddress(Cci.IArrayTypeReference arrayType) 105private ArrayMethod GetArrayMethod(Cci.IArrayTypeReference arrayType, ArrayMethodKind id) 120private static ArrayMethod MakeArrayMethod(Cci.IArrayTypeReference arrayType, ArrayMethodKind id) 146public ArrayConstructor(Cci.IArrayTypeReference arrayType) : base(arrayType) { } 160public ArrayGet(Cci.IArrayTypeReference arrayType) : base(arrayType) { } 174public ArrayAddress(Cci.IArrayTypeReference arrayType) : base(arrayType) { } 190public ArraySet(Cci.IArrayTypeReference arrayType) : base(arrayType) { } 272private readonly Cci.IArrayTypeReference _arrayType; 274internal ArraySetValueParameterInfo(ushort index, Cci.IArrayTypeReference arrayType) 290protected readonly Cci.IArrayTypeReference arrayType; 292protected ArrayMethod(Cci.IArrayTypeReference arrayType)
CodeGen\ILBuilderEmit.cs (4)
363internal void EmitArrayCreation(Microsoft.Cci.IArrayTypeReference arrayType, SyntaxNode syntaxNode, DiagnosticBag diagnostics) 377internal void EmitArrayElementLoad(Microsoft.Cci.IArrayTypeReference arrayType, SyntaxNode syntaxNode, DiagnosticBag diagnostics) 391internal void EmitArrayElementAddress(Microsoft.Cci.IArrayTypeReference arrayType, SyntaxNode syntaxNode, DiagnosticBag diagnostics) 405internal void EmitArrayElementStore(Cci.IArrayTypeReference arrayType, SyntaxNode syntaxNode, DiagnosticBag diagnostics)
CodeGen\ITokenDeferral.cs (1)
20Cci.IFieldReference GetArrayCachingFieldForData(ImmutableArray<byte> data, Cci.IArrayTypeReference arrayType, SyntaxNode syntaxNode, DiagnosticBag diagnostics);
CodeGen\MetadataCreateArray.cs (2)
18public Cci.IArrayTypeReference ArrayType { get; } 22public MetadataCreateArray(Cci.IArrayTypeReference arrayType, Cci.ITypeReference elementType, ImmutableArray<Cci.IMetadataExpression> initializers)
CodeGen\PrivateImplementationDetails.cs (1)
162internal Cci.IFieldReference CreateArrayCachingField(ImmutableArray<byte> data, Cci.IArrayTypeReference arrayType, EmitContext emitContext)
CodeGen\ReferenceDependencyWalker.cs (2)
49Cci.IArrayTypeReference? arrayType = typeReference as Cci.IArrayTypeReference;
Emit\CommonPEModuleBuilder.cs (1)
987Cci.IFieldReference ITokenDeferral.GetArrayCachingFieldForData(ImmutableArray<byte> data, Cci.IArrayTypeReference arrayType, SyntaxNode syntaxNode, DiagnosticBag diagnostics)
NativePdbWriter\PdbWriter.cs (1)
367Debug.Assert(!(typeReference is IArrayTypeReference));
PEWriter\InheritedTypeParameter.cs (2)
81public IArrayTypeReference? AsArrayTypeReference 85return this as IArrayTypeReference;
PEWriter\MetadataVisitor.cs (3)
26public virtual void Visit(IArrayTypeReference arrayTypeReference) 612IArrayTypeReference? arrayTypeReference = typeReference as IArrayTypeReference;
PEWriter\MetadataWriter.cs (5)
3450if (type is IArrayTypeReference arrayType) 3470if (!(targetType is IArrayTypeReference targetArrayType)) 3527if (c.Type is IArrayTypeReference) 3821if (typeReference is IArrayTypeReference arrayTypeReference) 3959private void SerializeCustomAttributeArrayType(in EmitContext context, CustomAttributeArrayTypeEncoder encoder, IArrayTypeReference arrayTypeReference)
PEWriter\ReferenceIndexerBase.cs (3)
332public override void Visit(IArrayTypeReference arrayTypeReference) 344else if (current is IArrayTypeReference) 348current = ((IArrayTypeReference)current).GetElementType(Context);
PEWriter\TypeNameSerializer.cs (6)
29IArrayTypeReference arrType = typeReference as IArrayTypeReference; 172IArrayTypeReference arrType = typeReference as IArrayTypeReference; 244IArrayTypeReference arrType = typeReference as IArrayTypeReference;
Microsoft.CodeAnalysis.CSharp (9)
Emitter\Model\ArrayTypeSymbolAdapter.cs (6)
22Cci.ITypeReference Cci.IArrayTypeReference.GetElementType(EmitContext context) 39bool Cci.IArrayTypeReference.IsSZArray 47ImmutableArray<int> Cci.IArrayTypeReference.LowerBounds => AdaptedArrayTypeSymbol.LowerBounds; 48int Cci.IArrayTypeReference.Rank => AdaptedArrayTypeSymbol.Rank; 49ImmutableArray<int> Cci.IArrayTypeReference.Sizes => AdaptedArrayTypeSymbol.Sizes; 53visitor.Visit((Cci.IArrayTypeReference)this);
Emitter\Model\AttributeDataAdapter.cs (1)
123var arrayType = ((PEModuleBuilder)context.Module).Translate((ArrayTypeSymbol)argument.TypeInternal);
Emitter\Model\PEModuleBuilder.cs (2)
1502internal Cci.IArrayTypeReference Translate(ArrayTypeSymbol symbol) 1504return (Cci.IArrayTypeReference)GetCciAdapter(symbol);
Microsoft.CodeAnalysis.VisualBasic (8)
Emit\ArrayTypeSymbolAdapter.vb (6)
19Private Function IArrayTypeReferenceGetElementType(context As EmitContext) As Cci.ITypeReference Implements Cci.IArrayTypeReference.GetElementType 31Private ReadOnly Property IArrayTypeReferenceIsSZArray As Boolean Implements Cci.IArrayTypeReference.IsSZArray 37Private ReadOnly Property IArrayTypeReferenceLowerBounds As ImmutableArray(Of Integer) Implements Cci.IArrayTypeReference.LowerBounds 43Private ReadOnly Property IArrayTypeReferenceRank As Integer Implements Cci.IArrayTypeReference.Rank 49Private ReadOnly Property IArrayTypeReferenceSizes As ImmutableArray(Of Integer) Implements Cci.IArrayTypeReference.Sizes 132visitor.Visit(DirectCast(Me, Cci.IArrayTypeReference))
Emit\SymbolTranslator.vb (2)
523Friend Overloads Function Translate(symbol As ArrayTypeSymbol) As Microsoft.Cci.IArrayTypeReference 524Return DirectCast(GetCciAdapter(symbol), Microsoft.Cci.IArrayTypeReference)