Table of Contents

Namespace AsmResolver.DotNet

Classes

AssemblyDefinition

Represents an assembly of self-describing modules of an executable file hosted by a common language runtime (CLR).

AssemblyDescriptor

Provides a base implementation for describing a self-describing .NET assembly hosted by a common language runtime (CLR).

AssemblyReference

Represents a reference to an external .NET assembly, hosted by a common language runtime (CLR).

AssemblyResolverBase

Provides a base implementation of an assembly resolver, that includes a collection of search directories to look into for probing assemblies.

ClassLayout

Describes the explicit layout of a type, including its total and packing size.

Constant

Represents a literal value that is assigned to a field, parameter or property.

CustomAttribute

Represents a custom attribute that is associated to a member in a .NET module.

DefaultMetadataResolver

Provides a default implementation for the IMetadataResolver interface.

DotNetCoreAssemblyResolver

Provides an implementation of an assembly resolver that includes .NET or .NET Core runtime libraries.

DotNetCorePathProvider

Provides a mechanism for looking up versioned runtimes in a .NET Core / .NET 5.0+ installation folder.

DotNetFrameworkAssemblyResolver

Provides an implementation of an assembly resolver that includes the global assembly cache (GAC), as well as any custom search directories.

EventDefinition

Represents a single event in a type definition of a .NET module.

ExportedType

Represents a type definition that was exported to another external .NET module.

FieldDefinition

Represents a single field in a type definition of a .NET module.

FileReference

Represents a reference to an external file that a .NET module depends on.

GenericParameter

Represents a type parameter that a generic method or type in a .NET module defines.

GenericParameterConstraint

Represents an object that constrains a generic parameter to only be instantiated with a specific type.

HasCustomAttributeExtensions

Provides extensions for various metadata members.

ImplementationMap

Represents a mapping that maps a method or field defined in a .NET module to an unmanaged function or global field defined in an external module through Platform Invoke (P/Invoke).

InterfaceImplementation

Represents extra metadata added to a type indicating the type is implementing a particular interface.

InvalidTypeDefOrRef

Represents an invalid reference to a type. This class cannot be instantiated by itself nor overridden, and is only used to identify faulty or malicious structures in the .NET metadata.

KnownCorLibs

Provides a list of common references to implementations of the Common Object Runtime (COR) library.

KnownRuntimeNames

Provides strings of known runtime names used in .NET Core, .NET 5.0 and later.

KnownRuntimeVersions

Provides strings of known runtime version numbers.

ManifestResource

Represents a single manifest resource file either embedded into the .NET assembly, or put into a separate file. In this case, it contains also a reference to the file the resource is located in.

MemberNameGenerator

Provides methods for constructing the full name of a member in a .NET module.

MemberReference

Represents a reference to a method or a field in an (external) .NET assembly.

MetadataMember

Represents a single member in a .NET image.

MethodDefinition

Represents a single method in a type definition of a .NET module.

MethodExtensions

Provides extensions for objects that represent methods in metadata.

MethodSemantics

Represents an object that associates a method definition to a property or an event.

MethodSpecification

Represents a reference to a generic method that is instantiated with type arguments.

ModuleDefinition

Represents a single module in a .NET assembly. A module definition is the root object of any .NET module and defines types, as well as any resources and referenced assemblies.

ModuleReference

Represents a reference to an external module. This module can be managed or unmanaged.

ParameterDefinition

Represents a single definition for a parameter that is defined by a method in a .NET executable file.

PropertyDefinition

Represents a single property in a type definition of a .NET module.

ReferenceImporter

Provides a mechanism for creating references to members defined in external .NET modules.

ReflectionAssemblyDescriptor

Provides a wrapper for Assembly that maps properties declared by Assembly onto an AssemblyDescriptor instance. This can be used for importing assemblies referenced by System.Reflection.

RuntimeContext

Describes a context in which a .NET runtime is active.

SecurityDeclaration

Provides a set of security attributes assigned to a metadata member.

StandAloneSignature

Represents a blob signature that can be referenced by metadata token.

TokenAllocator

Provides a mechanism to assign metadata tokens

TypeDefinition

Represents a type (a class, interface or structure) defined in a .NET module.

TypeDescriptorExtensions

Provides convenience extension methods to instances of ITypeDescriptor.

TypeReference

Represents a reference to a type defined in a .NET assembly.

TypeSpecification

Represents a type that allows for assigning metadata tokens to type signatures stored in the blob stream.

Structs

DotNetRuntimeInfo

Provides information about a target runtime.

GacDirectory

Provides information about a directory in the global assembly cache (GAC).

MethodImplementation

Defines an explicit implementation of a method defined by an interface.

UnmanagedExportInfo

Provides information about how a method should be exported as an unmanaged symbol in the final PE file.

Interfaces

IAssemblyResolver

Provides members for resolving references to external .NET assemblies.

ICustomAttributeType

Represents a member that can be referenced by a CustomAttributeType coded index,

IFieldDescriptor

Provides members for describing a field in a managed assembly.

IFullNameProvider

Represents a named object that has a full name.

IHasConstant

Represents a member that can be assigned a constant value, and can be referenced by a HasConstant coded index.

IHasCustomAttribute

Represents a member that can be referenced by a HasCustomAttribute coded index,

IHasFieldMarshal

Represents a member that can be assigned a field marshal descriptor, and can be referenced by a HasFieldMarshal coded index.

IHasGenericParameters

Represents a member that can be referenced by a TypeOrMethod coded index, and exposes generic parameters.

IHasSecurityDeclaration

Represents a member that can be assigned security declarations, and can be referenced by a HasDeclSecurity coded index.

IHasSemantics

Represents a member that can be referenced by a HasSemantics coded index.

IImplementation

Represents a member that is either a reference to an external file, assembly or type, and can be referenced by an Implementation coded index.

IImportable

Represents an entity in a .NET module that can be imported using the ReferenceImporter.

IManagedEntryPoint

Represents a member that is either a method definition or a reference to an external file, that can be used to indicate the managed entry point of a .NET module.

IMemberDefinition

Represents an accessible member defined in a metadata image.

IMemberDescriptor

Provides members for describing a (reference to a) member defined in a .NET assembly.

IMemberForwarded

Represents a member that can be assigned Platform Invoke (P/Invoke) implementation mappings, and can be indexed using a MemberForwarded coded index.

IMemberRefParent

Represents a member that can be referenced by a MemberRefParent coded index.

IMetadataMember

Represents a single member in a .NET image.

IMetadataResolver

Provides members for resolving references to members defined in external .NET assemblies.

IMethodDefOrRef

Represents a member that is either a method definition or a method reference, and can be referenced by a MethodDefOrRef coded index.

IMethodDescriptor

Provides members for describing a method in a managed assembly.

IModuleProvider

Represents a member definition or reference that resides in a .NET module.

INameProvider

Represents an object that has a name.

IResolutionScope

Represents a member that can be referenced by a ResolutionScope coded index.

ITypeDefOrRef

Represents a type definition or reference that can be referenced by a TypeDefOrRef coded index.

ITypeDescriptor

Provides members for describing a type in a managed assembly.

Enums

InvalidTypeSignatureError

Defines members for various errors that might occur during the parsing of a blob type signature.