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.
Type | Reason |
---|---|
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. |