System.Reflection.Emit Namespace
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
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
AssemblyBuilder |
Defines and represents 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. |
FieldBuilder |
Defines and represents a field. This class cannot be inherited. |
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. |
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. |
ModuleBuilder |
Defines and represents a module in a dynamic assembly. |
OpCodes |
Provides field representations of the Microsoft Intermediate Language (MSIL) instructions for emission by the ILGenerator class members (such as Emit(OpCode)). |
ParameterBuilder |
Creates or associates parameter information. |
PersistedAssemblyBuilder | |
PropertyBuilder |
Defines the properties for a type. |
SignatureHelper |
Provides methods for building signatures. |
TypeBuilder |
Defines and creates new instances of classes during run time. |
UnmanagedMarshal |
Represents the class that describes how to marshal a field from managed to unmanaged code. This class cannot be inherited. |
Structs
EventToken |
Represents the |
ExceptionHandler |
Represents an exception handler in a byte array of IL to be passed to a method such as SetMethodBody(Byte[], Int32, Byte[], IEnumerable<ExceptionHandler>, IEnumerable<Int32>). |
FieldToken |
The |
Label |
Represents a label in the instruction stream. |
MethodToken |
The |
OpCode |
Describes an intermediate language (IL) instruction. |
ParameterToken |
The |
PropertyToken |
The |
SignatureToken |
Represents the |
StringToken |
Represents a token that represents a string. |
TypeToken |
Represents the |
Enums
AssemblyBuilderAccess |
Defines the access modes for a dynamic assembly. |
FlowControl |
Describes how an instruction alters the flow of control. |
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. |
PEFileKinds |
Specifies the type of the portable executable (PE) file. |
StackBehaviour |
Describes how values are pushed onto a stack or popped off a stack. |
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for