Partager via


ILGenerator Classe

Définition

Génère des instructions MSIL (Microsoft Intermediate Language).

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
Héritage
ILGenerator
Attributs
Implémente

Remarques

ILGenerator est utilisé pour générer des corps de méthode pour les méthodes et les constructeurs dans les assemblys dynamiques (représentés par les classes MethodBuilder et ConstructorBuilder) et pour les méthodes dynamiques autonomes (représentées par la classe DynamicMethod). Pour obtenir un ILGenerator, utilisez les méthodes ConstructorBuilder.GetILGenerator, DynamicMethod.GetILGeneratoret MethodBuilder.GetILGenerator.

MSIL est utilisé comme entrée dans un compilateur juste-à-temps (JIT).

Constructeurs

ILGenerator()

Initialise une nouvelle instance de la classe ILGenerator.

Propriétés

ILOffset

Obtient le décalage actuel, en octets, dans le flux MSIL (Microsoft Intermediate Language) émis par le ILGenerator.

Méthodes

BeginCatchBlock(Type)

Commence un bloc catch.

BeginExceptFilterBlock()

Commence un bloc d’exception pour une exception filtrée.

BeginExceptionBlock()

Commence un bloc d’exception pour une exception non filtrée.

BeginFaultBlock()

Commence un bloc d’erreur d’exception dans le flux MSIL (Microsoft Intermediate Language).

BeginFinallyBlock()

Commence un bloc enfin dans le flux d’instructions MSIL (Microsoft Intermediate Language).

BeginScope()

Commence une étendue lexicale.

CreateLabel(Int32)

Crée un Label avec l’ID donné.

DeclareLocal(Type)

Déclare une variable locale du type spécifié.

DeclareLocal(Type, Boolean)

Déclare une variable locale du type spécifié, éventuellement épinglage de l’objet référencé par la variable.

DefineLabel()

Déclare une nouvelle étiquette.

Emit(OpCode)

Place l’instruction spécifiée dans le flux d’instructions.

Emit(OpCode, Byte)

Place l’argument d’instruction et de caractère spécifié dans le flux d’instructions msIL (Microsoft Intermediate Language).

Emit(OpCode, ConstructorInfo)

Place l’instruction et le jeton de métadonnées spécifiés pour le constructeur spécifié dans le flux d’instructions MSIL (Microsoft Intermediate Language).

Emit(OpCode, Double)

Place l’instruction et l’argument numérique spécifiés dans le flux d’instructions MSIL (Microsoft Intermediate Language).

Emit(OpCode, FieldInfo)

Place l’instruction et le jeton de métadonnées spécifiés pour le champ spécifié dans le flux d’instructions MSIL (Microsoft Intermediate Language).

Emit(OpCode, Int16)

Place l’instruction et l’argument numérique spécifiés dans le flux d’instructions MSIL (Microsoft Intermediate Language).

Emit(OpCode, Int32)

Place l’instruction et l’argument numérique spécifiés dans le flux d’instructions MSIL (Microsoft Intermediate Language).

Emit(OpCode, Int64)

Place l’instruction et l’argument numérique spécifiés dans le flux d’instructions MSIL (Microsoft Intermediate Language).

Emit(OpCode, Label)

Place l’instruction spécifiée sur le flux MSIL (Microsoft Intermediate Language) et laisse de l’espace pour inclure une étiquette lorsque des correctifs sont effectués.

Emit(OpCode, Label[])

Place l’instruction spécifiée sur le flux MSIL (Microsoft Intermediate Language) et laisse de l’espace pour inclure une étiquette lorsque des correctifs sont effectués.

Emit(OpCode, LocalBuilder)

Place l’instruction spécifiée sur le flux MSIL (Microsoft Intermediate Language) suivi de l’index de la variable locale donnée.

Emit(OpCode, MethodInfo)

Place l’instruction spécifiée sur le flux MSIL (Microsoft Intermediate Language) suivi du jeton de métadonnées pour la méthode donnée.

Emit(OpCode, SByte)

Place l’argument d’instruction et de caractère spécifié dans le flux d’instructions msIL (Microsoft Intermediate Language).

Emit(OpCode, SignatureHelper)

Place l’instruction spécifiée et un jeton de signature dans le flux d’instructions MSIL (Microsoft Intermediate Language).

Emit(OpCode, Single)

Place l’instruction et l’argument numérique spécifiés dans le flux d’instructions MSIL (Microsoft Intermediate Language).

Emit(OpCode, String)

Place l’instruction spécifiée sur le flux MSIL (Microsoft Intermediate Language) suivi du jeton de métadonnées pour la chaîne donnée.

Emit(OpCode, Type)

Place l’instruction spécifiée sur le flux MSIL (Microsoft Intermediate Language) suivi du jeton de métadonnées pour le type donné.

EmitCall(OpCode, MethodInfo, Type[])

Place une instruction call ou callvirt sur le flux MSIL (Microsoft Intermediate Language) pour appeler une méthode varargs.

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

Place une instruction Calli sur le flux MSIL (Microsoft Intermediate Language), en spécifiant une convention d’appel non managée pour l’appel indirect.

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

Place une instruction Calli sur le flux MSIL (Microsoft Intermediate Language), en spécifiant une convention d’appel managée pour l’appel indirect.

EmitWriteLine(FieldInfo)

Émet le langage MSIL (Microsoft Intermediate Language) nécessaire pour appeler WriteLine avec le champ donné.

EmitWriteLine(LocalBuilder)

Émet le langage MSIL (Microsoft Intermediate Language) nécessaire pour appeler WriteLine avec la variable locale donnée.

EmitWriteLine(String)

Émet le langage MSIL (Microsoft Intermediate Language) pour appeler WriteLine avec une chaîne.

EndExceptionBlock()

Termine un bloc d’exception.

EndScope()

Termine une étendue lexicale.

Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
MarkLabel(Label)

Marque la position actuelle du flux MSIL (Microsoft Intermediate Language) avec l’étiquette donnée.

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

Marque un point de séquence dans le flux MSIL (Microsoft Intermediate Language).

MarkSequencePointCore(ISymbolDocumentWriter, Int32, Int32, Int32, Int32)

En cas de substitution dans une classe dérivée, marque un point de séquence dans le flux MSIL (Microsoft Intermediate Language).

MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
ThrowException(Type)

Émet une instruction pour lever une exception.

ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)
UsingNamespace(String)

Spécifie l’espace de noms à utiliser pour évaluer les locaux et surveille l’étendue lexicale active actuelle.

Implémentations d’interfaces explicites

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

Mappe un ensemble de noms à un ensemble correspondant d’identificateurs de répartition.

_ILGenerator.GetTypeInfo(UInt32, UInt32, IntPtr)

Récupère les informations de type d’un objet, qui peuvent ensuite être utilisées pour obtenir les informations de type d’une interface.

_ILGenerator.GetTypeInfoCount(UInt32)

Récupère le nombre d’interfaces d’informations de type fournies par un objet (0 ou 1).

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

Fournit l’accès aux propriétés et méthodes exposées par un objet.

S’applique à