ILGenerator Clase

Definición

Genera instrucciones máquina del Lenguaje intermedio de Microsoft (MSIL).

public ref class ILGenerator
public ref class ILGenerator abstract
public ref class ILGenerator : System::Runtime::InteropServices::_ILGenerator
public class ILGenerator
public abstract class ILGenerator
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
public class ILGenerator : System.Runtime.InteropServices._ILGenerator
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Runtime.InteropServices.ComVisible(true)]
public class ILGenerator : System.Runtime.InteropServices._ILGenerator
type ILGenerator = class
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
type ILGenerator = class
    interface _ILGenerator
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ILGenerator = class
    interface _ILGenerator
Public Class ILGenerator
Public MustInherit Class ILGenerator
Public Class ILGenerator
Implements _ILGenerator
Herencia
ILGenerator
Atributos
Implementaciones

Comentarios

ILGenerator se usa para generar cuerpos de método para métodos y constructores en ensamblados dinámicos (representados por las MethodBuilder clases y ConstructorBuilder ) y para métodos dinámicos independientes (representados por la DynamicMethod clase ). Para obtener un ILGenerator, use los ConstructorBuilder.GetILGeneratormétodos , DynamicMethod.GetILGeneratory MethodBuilder.GetILGenerator .

MSIL se usa como entrada para un compilador Just-In-Time (JIT).

Constructores

ILGenerator()

Inicializa una nueva instancia de la clase ILGenerator.

Propiedades

ILOffset

Obtiene el desplazamiento actual, en bytes, de la secuencia del Lenguaje intermedio de Microsoft (MSIL) que emite el objeto ILGenerator.

Métodos

BeginCatchBlock(Type)

Inicia un bloque catch.

BeginExceptFilterBlock()

Inicia un bloque de excepción para una excepción filtrada.

BeginExceptionBlock()

Inicia un bloque de excepción para una excepción no filtrada.

BeginFaultBlock()

Inicia un bloque de errores de excepción en la secuencia del Lenguaje intermedio de Microsoft (MSIL).

BeginFinallyBlock()

Inicia un bloque finally en la secuencia de instrucciones máquina del Lenguaje intermedio de Microsoft (MSIL).

BeginScope()

Inicia un ámbito léxico.

CreateLabel(Int32)

Genera instrucciones máquina del Lenguaje intermedio de Microsoft (MSIL).

DeclareLocal(Type)

Declara una variable local del tipo especificado.

DeclareLocal(Type, Boolean)

Declara una variable local del tipo especificado, y ancla opcionalmente el objeto al que hace referencia la variable.

DefineLabel()

Declara una nueva etiqueta.

Emit(OpCode)

Coloca la instrucción máquina especificada en la secuencia de instrucciones máquina.

Emit(OpCode, Byte)

Coloca la instrucción máquina y el argumento de carácter especificados en la secuencia de instrucciones máquina del Lenguaje intermedio de Microsoft (MSIL).

Emit(OpCode, ConstructorInfo)

Coloca la instrucción máquina y el símbolo (token) de metadatos especificados del constructor especificado en la secuencia de instrucciones máquina del Lenguaje intermedio de Microsoft (MSIL).

Emit(OpCode, Double)

Coloca la instrucción máquina y el argumento numérico especificados en la secuencia de instrucciones máquina del Lenguaje intermedio de Microsoft (MSIL).

Emit(OpCode, FieldInfo)

Coloca la instrucción máquina y el símbolo (token) de metadatos especificados del campo especificado en la secuencia de instrucciones máquina del Lenguaje intermedio de Microsoft (MSIL).

Emit(OpCode, Int16)

Coloca la instrucción máquina y el argumento numérico especificados en la secuencia de instrucciones máquina del Lenguaje intermedio de Microsoft (MSIL).

Emit(OpCode, Int32)

Coloca la instrucción máquina y el argumento numérico especificados en la secuencia de instrucciones máquina del Lenguaje intermedio de Microsoft (MSIL).

Emit(OpCode, Int64)

Coloca la instrucción máquina y el argumento numérico especificados en la secuencia de instrucciones máquina del Lenguaje intermedio de Microsoft (MSIL).

Emit(OpCode, Label)

Coloca la instrucción máquina especificada en la secuencia del Lenguaje intermedio de Microsoft (MSIL) y deja espacio para incluir una etiqueta cuando se efectúen correcciones.

Emit(OpCode, Label[])

Coloca la instrucción máquina especificada en la secuencia del Lenguaje intermedio de Microsoft (MSIL) y deja espacio para incluir una etiqueta cuando se efectúen correcciones.

Emit(OpCode, LocalBuilder)

Coloca la instrucción máquina especificada en la secuencia del Lenguaje intermedio de Microsoft (MSIL) seguida del índice de la variable local indicada.

Emit(OpCode, MethodInfo)

Coloca la instrucción máquina especificada en la secuencia del Lenguaje intermedio de Microsoft (MSIL) seguida del símbolo (token) de metadatos del método indicado.

Emit(OpCode, SByte)

Coloca la instrucción máquina y el argumento de carácter especificados en la secuencia de instrucciones máquina del Lenguaje intermedio de Microsoft (MSIL).

Emit(OpCode, SignatureHelper)

Coloca la instrucción máquina especificada y un símbolo (token) de firma en la secuencia de instrucciones máquina del Lenguaje intermedio de Microsoft (MSIL).

Emit(OpCode, Single)

Coloca la instrucción máquina y el argumento numérico especificados en la secuencia de instrucciones máquina del Lenguaje intermedio de Microsoft (MSIL).

Emit(OpCode, String)

Coloca la instrucción máquina especificada en la secuencia del Lenguaje intermedio de Microsoft (MSIL) seguida del símbolo (token) de metadatos de la cadena indicada.

Emit(OpCode, Type)

Coloca la instrucción máquina especificada en la secuencia del Lenguaje intermedio de Microsoft (MSIL) seguida del símbolo (token) de metadatos del tipo indicado.

EmitCall(OpCode, MethodInfo, Type[])

Coloca una instrucción call o callvirt en la secuencia de Lenguaje Intermedio de Microsoft (MSIL) para llamar a un método varargs.

EmitCalli(OpCode, CallingConvention, Type, Type[])

Coloca una instrucción máquina Calli en la secuencia del Lenguaje intermedio de Microsoft (MSIL), especificando una convención de llamada no administrada para la llamada indirecta.

EmitCalli(OpCode, CallingConventions, Type, Type[], Type[])

Coloca una instrucción máquina Calli en la secuencia del Lenguaje intermedio de Microsoft (MSIL), especificando una convención de llamada administrada para la llamada indirecta.

EmitWriteLine(FieldInfo)

Emite el Lenguaje intermedio de Microsoft (MSIL) necesario para llamar a WriteLine con el campo especificado.

EmitWriteLine(LocalBuilder)

Emite el Lenguaje Intermedio de Microsoft (MSIL) necesario para llamar a WriteLine con la variable local dada.

EmitWriteLine(String)

Emite el Lenguaje intermedio de Microsoft (MSIL) necesario para llamar a WriteLine con una cadena.

EndExceptionBlock()

Finaliza un bloque de excepción.

EndScope()

Finaliza un ámbito léxico.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MarkLabel(Label)

Marca la posición actual de la secuencia del Lenguaje intermedio de Microsoft (MSIL) con la etiqueta especificada.

MarkSequencePoint(ISymbolDocumentWriter, Int32, Int32, Int32, Int32)

Marca un punto de sucesión en la secuencia del Lenguaje intermedio de Microsoft (MSIL).

MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ThrowException(Type)

Emite una instrucción máquina para producir una excepción.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
UsingNamespace(String)

Especifica el espacio de nombres que se va a utilizar para evaluar las variables locales e inspecciones del actual ámbito léxico activo.

Implementaciones de interfaz explícitas

_ILGenerator.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.

_ILGenerator.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera la información de tipo de un objeto, que se puede usar después para obtener la información de tipo de una interfaz.

_ILGenerator.GetTypeInfoCount(UInt32)

Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1).

_ILGenerator.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Proporciona acceso a las propiedades y los métodos expuestos por un objeto.

Se aplica a