System.Reflection.Emit 命名空间
System.Reflection.Emit 命名空间包含允许编译器或工具发出元数据和 Microsoft 中间语言 (MSIL) 并可选择在磁盘上生成 PE 文件的类。这些类的主要客户端是脚本引擎和编译器。
类
类 | 说明 | |
---|---|---|
![]() |
AssemblyBuilder | 定义并表示动态程序集。 |
![]() |
ConstructorBuilder | 定义并表示动态类的构造函数。 |
![]() |
CustomAttributeBuilder | 帮助生成自定义属性。 |
![]() |
DynamicILInfo | 提供对多种用来为动态方法生成 Microsoft 中间语言 (MSIL) 和元数据的其他方式的支持,包括用来创建标记和插入代码的方法、异常处理,以及局部变量签名 Blob。 |
![]() |
DynamicMethod | 定义和表示动态方法。无法继承此类。 |
![]() |
EnumBuilder | 说明并表示枚举类型。 |
![]() |
EventBuilder | 定义类的事件。 |
![]() |
FieldBuilder | 定义并表示字段。无法继承此类。 |
![]() |
GenericTypeParameterBuilder | 为动态定义的泛型类型与方法定义和创建泛型类型参数。无法继承此类。 |
![]() |
ILGenerator | 生成 Microsoft 中间语言 (MSIL) 指令。 |
![]() |
LocalBuilder | 表示方法或构造函数内的局部变量。 |
![]() |
MethodBuilder | 定义并表示动态类的方法(或构造函数)。 |
![]() |
MethodRental | 在给定类的方法的情况下,提供一种交换方法体实现的快速方法。 |
![]() |
ModuleBuilder | 定义并表示模块。通过调用 DefineDynamicModule 获取 ModuleBuilder 的实例。 |
![]() |
OpCodes | 通过 ILGenerator 类成员(例如 Emit)为发出提供 Microsoft 中间语言 (MSIL) 指令的字段表示形式。 |
![]() |
ParameterBuilder | 创建或关联参数信息。 |
![]() |
PropertyBuilder | 定义类型的属性 (Property)。 |
![]() |
SignatureHelper | 提供生成签名的方法。 |
![]() |
TypeBuilder | 在运行时定义并创建类的新实例。 |
![]() |
UnmanagedMarshal | 表示说明如何将字段从托管代码封送为非托管代码的类。无法继承此类。 |
结构
结构 | 说明 | |
---|---|---|
![]() |
EventToken | 表示由元数据返回以表示某事件的 Token。 |
![]() |
FieldToken | FieldToken 结构是表示字段的标记的对象表示形式。 |
![]() |
Label | 表示指令流中的标签。Label 与 ILGenerator 类一起使用。 |
![]() |
MethodToken | MethodToken 结构是表示方法的标记的对象表示形式。 |
![]() |
OpCode | 描述 Microsoft 中间语言 (MSIL) 指令。 |
![]() |
ParameterToken | ParameterToken 结构是由元数据返回以表示参数的标记的不透明表示形式。 |
![]() |
PropertyToken | PropertyToken 结构是由元数据返回以表示属性的 Token 的不透明表示形式。 |
![]() |
SignatureToken | 表示由元数据返回以表示签名的 Token。 |
![]() |
StringToken | 表示用于表示字符串的标记。 |
![]() |
TypeToken | 表示由元数据返回以表示类型的 Token。 |
枚举
枚举 | 说明 | |
---|---|---|
![]() |
AssemblyBuilderAccess | 定义动态程序集的访问模式。 |
![]() |
FlowControl | 描述指令如何改变控制流。 |
![]() |
OpCodeType | 描述 Microsoft 中间语言 (MSIL) 指令的类型。 |
![]() |
OperandType | 描述 Microsoft 中间语言 (MSIL) 指令的操作数类型。 |
![]() |
PackingSize | 指定在封送类型时用于确定字段的内存对齐方式的两个因数中的一个。 |
![]() |
PEFileKinds | 指定可移植可执行 (PE) 文件的类型。 |
![]() |
StackBehaviour | 描述如何将值推到堆栈上或从堆栈中弹出。 |