Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
System.Reflection.Metadata.MetadataReader Class Referencesealed

Classes

struct  ProjectionInfo
 

Public Member Functions

unsafe MetadataReader (byte *metadata, int length)
 
unsafe MetadataReader (byte *metadata, int length, MetadataReaderOptions options)
 
unsafe MetadataReader (byte *metadata, int length, MetadataReaderOptions options, MetadataStringDecoder? utf8Decoder)
 
AssemblyDefinition GetAssemblyDefinition ()
 
string GetString (StringHandle handle)
 
string GetString (NamespaceDefinitionHandle handle)
 
byte[] GetBlobBytes (BlobHandle handle)
 
ImmutableArray< byte > GetBlobContent (BlobHandle handle)
 
BlobReader GetBlobReader (BlobHandle handle)
 
BlobReader GetBlobReader (StringHandle handle)
 
string GetUserString (UserStringHandle handle)
 
Guid GetGuid (GuidHandle handle)
 
ModuleDefinition GetModuleDefinition ()
 
AssemblyReference GetAssemblyReference (AssemblyReferenceHandle handle)
 
TypeDefinition GetTypeDefinition (TypeDefinitionHandle handle)
 
NamespaceDefinition GetNamespaceDefinitionRoot ()
 
NamespaceDefinition GetNamespaceDefinition (NamespaceDefinitionHandle handle)
 
TypeReference GetTypeReference (TypeReferenceHandle handle)
 
ExportedType GetExportedType (ExportedTypeHandle handle)
 
CustomAttributeHandleCollection GetCustomAttributes (EntityHandle handle)
 
CustomAttribute GetCustomAttribute (CustomAttributeHandle handle)
 
DeclarativeSecurityAttribute GetDeclarativeSecurityAttribute (DeclarativeSecurityAttributeHandle handle)
 
Constant GetConstant (ConstantHandle handle)
 
MethodDefinition GetMethodDefinition (MethodDefinitionHandle handle)
 
FieldDefinition GetFieldDefinition (FieldDefinitionHandle handle)
 
PropertyDefinition GetPropertyDefinition (PropertyDefinitionHandle handle)
 
EventDefinition GetEventDefinition (EventDefinitionHandle handle)
 
MethodImplementation GetMethodImplementation (MethodImplementationHandle handle)
 
MemberReference GetMemberReference (MemberReferenceHandle handle)
 
MethodSpecification GetMethodSpecification (MethodSpecificationHandle handle)
 
Parameter GetParameter (ParameterHandle handle)
 
GenericParameter GetGenericParameter (GenericParameterHandle handle)
 
GenericParameterConstraint GetGenericParameterConstraint (GenericParameterConstraintHandle handle)
 
ManifestResource GetManifestResource (ManifestResourceHandle handle)
 
AssemblyFile GetAssemblyFile (AssemblyFileHandle handle)
 
StandaloneSignature GetStandaloneSignature (StandaloneSignatureHandle handle)
 
TypeSpecification GetTypeSpecification (TypeSpecificationHandle handle)
 
ModuleReference GetModuleReference (ModuleReferenceHandle handle)
 
InterfaceImplementation GetInterfaceImplementation (InterfaceImplementationHandle handle)
 
string GetString (DocumentNameBlobHandle handle)
 
Document GetDocument (DocumentHandle handle)
 
MethodDebugInformation GetMethodDebugInformation (MethodDebugInformationHandle handle)
 
MethodDebugInformation GetMethodDebugInformation (MethodDefinitionHandle handle)
 
LocalScope GetLocalScope (LocalScopeHandle handle)
 
LocalVariable GetLocalVariable (LocalVariableHandle handle)
 
LocalConstant GetLocalConstant (LocalConstantHandle handle)
 
ImportScope GetImportScope (ImportScopeHandle handle)
 
CustomDebugInformation GetCustomDebugInformation (CustomDebugInformationHandle handle)
 
CustomDebugInformationHandleCollection GetCustomDebugInformation (EntityHandle handle)
 
LocalScopeHandleCollection GetLocalScopes (MethodDefinitionHandle handle)
 
LocalScopeHandleCollection GetLocalScopes (MethodDebugInformationHandle handle)
 

Package Functions

AssemblyName GetAssemblyName (StringHandle nameHandle, Version version, StringHandle cultureHandle, BlobHandle publicKeyOrTokenHandle, AssemblyHashAlgorithm assemblyHashAlgorithm, AssemblyFlags flags)
 
unsafe MetadataReader (byte *metadata, int length, MetadataReaderOptions options, MetadataStringDecoder? utf8Decoder, object? memoryOwner)
 
void GetFieldRange (TypeDefinitionHandle typeDef, out int firstFieldRowId, out int lastFieldRowId)
 
void GetMethodRange (TypeDefinitionHandle typeDef, out int firstMethodRowId, out int lastMethodRowId)
 
void GetEventRange (TypeDefinitionHandle typeDef, out int firstEventRowId, out int lastEventRowId)
 
void GetPropertyRange (TypeDefinitionHandle typeDef, out int firstPropertyRowId, out int lastPropertyRowId)
 
void GetParameterRange (MethodDefinitionHandle methodDef, out int firstParamRowId, out int lastParamRowId)
 
void GetLocalVariableRange (LocalScopeHandle scope, out int firstVariableRowId, out int lastVariableRowId)
 
void GetLocalConstantRange (LocalScopeHandle scope, out int firstConstantRowId, out int lastConstantRowId)
 
TypeDefinitionHandle GetDeclaringType (MethodDefinitionHandle methodDef)
 
TypeDefinitionHandle GetDeclaringType (FieldDefinitionHandle fieldDef)
 
ImmutableArray< TypeDefinitionHandleGetNestedTypes (TypeDefinitionHandle typeDef)
 
uint CalculateTypeDefTreatmentAndRowId (TypeDefinitionHandle handle)
 
uint CalculateTypeRefTreatmentAndRowId (TypeReferenceHandle handle)
 
CustomAttributeValueTreatment CalculateCustomAttributeValueTreatment (CustomAttributeHandle handle)
 

Static Package Functions

static void ReadStandalonePortablePdbStream (MemoryBlock pdbStreamBlock, int pdbStreamOffset, out DebugMetadataHeader debugMetadataHeader, out int[] externalTableRowCounts)
 
static AssemblyReferenceHandle GetProjectedAssemblyRef (int projectionIndex)
 
static StringHandle GetProjectedName (int projectionIndex)
 
static StringHandle GetProjectedNamespace (int projectionIndex)
 
static TypeRefSignatureTreatment GetProjectedSignatureTreatment (int projectionIndex)
 
static string[] GetProjectedTypeNames ()
 

Package Attributes

readonly NamespaceCache NamespaceCache
 
readonly MemoryBlock Block
 
readonly int WinMDMscorlibRef
 
StringHeap StringHeap
 
BlobHeap BlobHeap
 
GuidHeap GuidHeap
 
UserStringHeap UserStringHeap
 
bool IsMinimalDelta
 
int[] TableRowCounts
 
ModuleTableReader ModuleTable
 
TypeRefTableReader TypeRefTable
 
TypeDefTableReader TypeDefTable
 
FieldPtrTableReader FieldPtrTable
 
FieldTableReader FieldTable
 
MethodPtrTableReader MethodPtrTable
 
MethodTableReader MethodDefTable
 
ParamPtrTableReader ParamPtrTable
 
ParamTableReader ParamTable
 
InterfaceImplTableReader InterfaceImplTable
 
MemberRefTableReader MemberRefTable
 
ConstantTableReader ConstantTable
 
CustomAttributeTableReader CustomAttributeTable
 
FieldMarshalTableReader FieldMarshalTable
 
DeclSecurityTableReader DeclSecurityTable
 
ClassLayoutTableReader ClassLayoutTable
 
FieldLayoutTableReader FieldLayoutTable
 
StandAloneSigTableReader StandAloneSigTable
 
EventMapTableReader EventMapTable
 
EventPtrTableReader EventPtrTable
 
EventTableReader EventTable
 
PropertyMapTableReader PropertyMapTable
 
PropertyPtrTableReader PropertyPtrTable
 
PropertyTableReader PropertyTable
 
MethodSemanticsTableReader MethodSemanticsTable
 
MethodImplTableReader MethodImplTable
 
ModuleRefTableReader ModuleRefTable
 
TypeSpecTableReader TypeSpecTable
 
ImplMapTableReader ImplMapTable
 
FieldRVATableReader FieldRvaTable
 
EnCLogTableReader EncLogTable
 
EnCMapTableReader EncMapTable
 
AssemblyTableReader AssemblyTable
 
AssemblyProcessorTableReader AssemblyProcessorTable
 
AssemblyOSTableReader AssemblyOSTable
 
AssemblyRefTableReader AssemblyRefTable
 
AssemblyRefProcessorTableReader AssemblyRefProcessorTable
 
AssemblyRefOSTableReader AssemblyRefOSTable
 
FileTableReader FileTable
 
ExportedTypeTableReader ExportedTypeTable
 
ManifestResourceTableReader ManifestResourceTable
 
NestedClassTableReader NestedClassTable
 
GenericParamTableReader GenericParamTable
 
MethodSpecTableReader MethodSpecTable
 
GenericParamConstraintTableReader GenericParamConstraintTable
 
DocumentTableReader DocumentTable
 
MethodDebugInformationTableReader MethodDebugInformationTable
 
LocalScopeTableReader LocalScopeTable
 
LocalVariableTableReader LocalVariableTable
 
LocalConstantTableReader LocalConstantTable
 
ImportScopeTableReader ImportScopeTable
 
StateMachineMethodTableReader StateMachineMethodTable
 
CustomDebugInformationTableReader CustomDebugInformationTable
 

Static Package Attributes

const string ClrPrefix = "<CLR>"
 
static readonly byte[] WinRTPrefix = new byte[7] { 60, 87, 105, 110, 82, 84, 62 }
 

Properties

bool UseFieldPtrTable [get]
 
bool UseMethodPtrTable [get]
 
bool UseParamPtrTable [get]
 
bool UseEventPtrTable [get]
 
bool UsePropertyPtrTable [get]
 
unsafe byte * MetadataPointer [get]
 
int MetadataLength [get]
 
MetadataReaderOptions Options [get]
 
string MetadataVersion [get]
 
DebugMetadataHeaderDebugMetadataHeader [get]
 
MetadataKind MetadataKind [get]
 
MetadataStringComparer StringComparer [get]
 
MetadataStringDecoder UTF8Decoder [get]
 
bool IsAssembly [get]
 
AssemblyReferenceHandleCollection AssemblyReferences [get]
 
TypeDefinitionHandleCollection TypeDefinitions [get]
 
TypeReferenceHandleCollection TypeReferences [get]
 
CustomAttributeHandleCollection CustomAttributes [get]
 
DeclarativeSecurityAttributeHandleCollection DeclarativeSecurityAttributes [get]
 
MemberReferenceHandleCollection MemberReferences [get]
 
ManifestResourceHandleCollection ManifestResources [get]
 
AssemblyFileHandleCollection AssemblyFiles [get]
 
ExportedTypeHandleCollection ExportedTypes [get]
 
MethodDefinitionHandleCollection MethodDefinitions [get]
 
FieldDefinitionHandleCollection FieldDefinitions [get]
 
EventDefinitionHandleCollection EventDefinitions [get]
 
PropertyDefinitionHandleCollection PropertyDefinitions [get]
 
DocumentHandleCollection Documents [get]
 
MethodDebugInformationHandleCollection MethodDebugInformation [get]
 
LocalScopeHandleCollection LocalScopes [get]
 
LocalVariableHandleCollection LocalVariables [get]
 
LocalConstantHandleCollection LocalConstants [get]
 
ImportScopeCollection ImportScopes [get]
 
CustomDebugInformationHandleCollection CustomDebugInformation [get]
 

Private Member Functions

AssemblyNameFlags GetAssemblyNameFlags (AssemblyFlags flags)
 
AssemblyContentType GetContentTypeFromAssemblyFlags (AssemblyFlags flags)
 
void ReadMetadataHeader (ref BlobReader memReader, out string versionString)
 
MetadataKind GetMetadataKind (string versionString)
 
StreamHeader[] ReadStreamHeaders (ref BlobReader memReader)
 
void InitializeStreamReaders (in MemoryBlock metadataRoot, StreamHeader[] streamHeaders, out MetadataStreamKind metadataStreamKind, out MemoryBlock metadataTableStream, out MemoryBlock standalonePdbStream)
 
void ReadMetadataTableHeader (ref BlobReader reader, out HeapSizes heapSizes, out int[] metadataTableRowCounts, out TableMask sortedTables)
 
int GetReferenceSize (int[] rowCounts, TableIndex index)
 
void InitializeTableReaders (MemoryBlock metadataTablesMemoryBlock, HeapSizes heapSizes, int[] rowCounts, int[] externalRowCountsOpt)
 
int ComputeCodedTokenSize (int largeRowSize, int[] rowCounts, TableMask tablesReferenced)
 
bool IsDeclaredSorted (TableMask index)
 
uint GetTypeDefTreatmentAndRowId (TypeDefinitionHandle handle)
 
uint GetTypeRefTreatmentAndRowId (TypeReferenceHandle handle)
 
uint GetCustomAttributeTreatmentAndRowId (CustomAttributeHandle handle)
 
uint GetMethodDefTreatmentAndRowId (MethodDefinitionHandle handle)
 
uint GetFieldDefTreatmentAndRowId (FieldDefinitionHandle handle)
 
uint GetMemberRefTreatmentAndRowId (MemberReferenceHandle handle)
 
void InitializeNestedTypesMap ()
 
TypeDefTreatment GetWellKnownTypeDefinitionTreatment (TypeDefinitionHandle typeDef)
 
int GetProjectionIndexForTypeReference (TypeReferenceHandle typeRef, out bool isIDisposable)
 
bool IsClrImplementationType (TypeDefinitionHandle typeDef)
 
TypeRefTreatment GetSpecialTypeRefTreatment (TypeReferenceHandle handle)
 
bool IsSystemAttribute (TypeReferenceHandle handle)
 
bool NeedsWinRTPrefix (TypeAttributes flags, EntityHandle extends)
 
uint CalculateMethodDefTreatmentAndRowId (MethodDefinitionHandle methodDef)
 
MethodDefTreatment GetMethodTreatmentFromCustomAttributes (MethodDefinitionHandle methodDef)
 
uint CalculateFieldDefTreatmentAndRowId (FieldDefinitionHandle handle)
 
uint CalculateMemberRefTreatmentAndRowId (MemberReferenceHandle handle)
 
bool ImplementsRedirectedInterface (MemberReferenceHandle memberRef, out bool isIDisposable)
 
int FindMscorlibAssemblyRefNoProjection ()
 
bool IsWindowsAttributeUsageAttribute (EntityHandle targetType, CustomAttributeHandle attributeHandle)
 
bool HasAttribute (EntityHandle token, string asciiNamespaceName, string asciiTypeName)
 
bool GetAttributeTypeNameRaw (CustomAttributeHandle caHandle, out StringHandle namespaceName, out StringHandle typeName)
 
EntityHandle GetAttributeTypeRaw (CustomAttributeHandle handle)
 

Static Private Member Functions

static int[] ReadMetadataTableRowCounts (ref BlobReader memReader, ulong presentTableMask)
 
static int[] CombineRowCounts (int[] local, int[] external, TableIndex firstLocalTableIndex)
 
static void InitializeProjectedTypes ()
 
static uint TreatmentAndRowId (byte treatment, int rowId)
 

Private Attributes

readonly object _memoryOwnerObj
 
readonly MetadataReaderOptions _options
 
Dictionary< TypeDefinitionHandle, ImmutableArray< TypeDefinitionHandle > > _lazyNestedTypesMap
 
readonly string _versionString
 
readonly MetadataKind _metadataKind
 
readonly MetadataStreamKind _metadataStreamKind
 
readonly DebugMetadataHeader _debugMetadataHeader
 
readonly TableMask _sortedTables
 

Static Private Attributes

static string[] s_projectedTypeNames
 
static ProjectionInfo[] s_projectionInfos
 

Detailed Description

Definition at line 11 of file MetadataReader.cs.


The documentation for this class was generated from the following file: