The 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.
| Class | Description |
|---|---|
| class AssemblyBuilder | Defines and represents a dynamic assembly. |
| class ConstructorBuilder | Defines and represents a constructor of a dynamic class. |
| class CustomAttributeBuilder | Helps build custom attributes. |
| class EnumBuilder | Describes and represents an enumeration type. |
| class EventBuilder | Defines events for a class. |
| class FieldBuilder | Defines and represents a field. This class cannot be inherited. |
| class ILGenerator | Generates Microsoft intermediate language (MSIL) instructions. |
| class LocalBuilder | Represents a local variable within a method or constructor. |
| class MethodBuilder | Defines and represents a method (or constructor) on a dynamic class. |
| class MethodRental | Provides a fast way to swap method body implementation given a method of a class. |
| class ModuleBuilder | Defines and represents a module. Get an instance of ModuleBuilder by calling AssemblyBuilder.DefineDynamicModule. |
| class OpCodes | Provides field representations of the Microsoft Intermediate Language (MSIL) instructions for emission by the class members (such as ). |
| class ParameterBuilder | Creates or associates parameter information. |
| class PropertyBuilder | Defines the properties for a type. |
| class SignatureHelper | Provides methods for building signatures. |
| class TypeBuilder | Defines and creates new instances of classes during runtime. |
| class UnmanagedMarshal | Represents the class that describes how to marshal a field from managed to unmanaged code. This class cannot be inherited. |
| Structure | Description |
|---|---|
| structure EventToken | Represents the returned by the metadata to represent an event. |
| structure FieldToken | The class is an object representation of a token that represents a field. |
| structure Label | Represents a label in the instruction stream. is used in conjunction with the ILGenerator class. |
| structure MethodToken | The class is an object representation of a token that represents a method. |
| structure OpCode | Describes a Microsoft intermediate language (MSIL) instruction. |
| structure ParameterToken | The class is an opaque representation of the token returned by the metadata to represent a parameter. |
| structure PropertyToken | The class is an opaque representation of the returned by the metadata to represent a property. |
| structure SignatureToken | Represents the returned by the metadata to represent a signature. |
| structure StringToken | Represents a token that represents a string. |
| structure TypeToken | Represents the returned by the metadata to represent a type. |
| Enumeration | Description |
|---|---|
| enumeration AssemblyBuilderAccess | Defines the access modes for a dynamic assembly. |
| enumeration FlowControl | Describes how an instruction alters the flow of control. |
| enumeration OpCodeType | Describes the types of the Microsoft intermediate language (MSIL) instructions. |
| enumeration OperandType | Describes the operand type of Microsoft intermediate language (MSIL) instruction. |
| enumeration PackingSize | Specifies the packing size of a type. |
| enumeration PEFileKinds | Specifies the type of the portable executable (PE) file. |
| enumeration StackBehaviour | Describes how values are pushed onto a stack or popped off a stack. |