System.Reflection.Emit Namespace

The System.Reflection.Emit namespace contains classes that allow a compiler or tool to emit metadata and Microsoft intermediate language (MSIL) and optionally generate a PE file on disk. The primary clients of these classes are script engines and compilers.

Classes

TypeReason
AssemblyBuilder

Defines and represents a dynamic assembly.

AssemblyBuilderAccess

Defines the access modes for a dynamic assembly.

ConstructorBuilder

Defines and represents a constructor of a dynamic class.

CustomAttributeBuilder

Helps build custom attributes.

DynamicILInfo

Provides support for alternative ways to generate the Microsoft intermediate language (MSIL) and metadata for a dynamic method, including methods for creating tokens and for inserting the code, exception handling, and local variable signature blobs.

DynamicMethod

Defines and represents a dynamic method that can be compiled, executed, and discarded. Discarded methods are available for garbage collection.

EnumBuilder

Describes and represents an enumeration type.

EventBuilder

Defines events for a class.

EventToken

Represents the Token returned by the metadata to represent an event.

FieldBuilder

Defines and represents a field. This class cannot be inherited.

FieldToken

The FieldToken struct is an object representation of a token that represents a field.

FlowControl

Describes how an instruction alters the flow of control.

GenericTypeParameterBuilder

Defines and creates generic type parameters for dynamically defined generic types and methods. This class cannot be inherited.

ILGenerator

Generates Microsoft intermediate language (MSIL) instructions.

Label

Represents a label in the instruction stream. Label is used in conjunction with the System.Reflection.Emit.ILGenerator class.

LocalBuilder

Represents a local variable within a method or constructor.

MethodBuilder

Defines and represents a method (or constructor) on a dynamic class.

MethodRental

Provides a fast way to swap method body implementation given a method of a class.

MethodToken

The MethodToken struct is an object representation of a token that represents a method.

ModuleBuilder

Defines and represents a module in a dynamic assembly.

OpCode

Describes a Microsoft intermediate language (MSIL) instruction.

OpCodes

Provides field representations of the Microsoft Intermediate Language (MSIL) instructions for emission by the System.Reflection.Emit.ILGenerator class members (such as System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode)).

OpCodeType

Describes the types of the Microsoft intermediate language (MSIL) instructions.

OperandType

Describes the operand type of Microsoft intermediate language (MSIL) instruction.

PackingSize

Specifies one of two factors that determine the memory alignment of fields when a type is marshaled.

ParameterBuilder

Creates or associates parameter information.

ParameterToken

The ParameterToken struct is an opaque representation of the token returned by the metadata to represent a parameter.

PEFileKinds

Specifies the type of the portable executable (PE) file.

PropertyBuilder

Defines the properties for a type.

PropertyToken

The PropertyToken struct is an opaque representation of the Token returned by the metadata to represent a property.

SignatureHelper

Provides methods for building signatures.

SignatureToken

Represents the Token returned by the metadata to represent a signature.

StackBehaviour

Describes how values are pushed onto a stack or popped off a stack.

StringToken

Represents a token that represents a string.

TypeBuilder

Defines and creates new instances of classes during run time.

TypeToken

Represents the Token returned by the metadata to represent a type.

UnmanagedMarshal

Represents the class that describes how to marshal a field from managed to unmanaged code. This class cannot be inherited.