ILGenerator Třída

Definice

Vygeneruje pokyny jazyka 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
Dědičnost
ILGenerator
Atributy
Implementuje

Poznámky

ILGenerator se používá ke generování těl metod pro metody a konstruktory v dynamických sestaveních (reprezentovaných třídami MethodBuilder a ConstructorBuilder ) a pro samostatné dynamické metody (reprezentované DynamicMethod třídou). Chcete-li získat ILGenerator, použijte ConstructorBuilder.GetILGeneratormetody , DynamicMethod.GetILGeneratora MethodBuilder.GetILGenerator .

Jazyk MSIL se používá jako vstup do kompilátoru za běhu (JIT).

Konstruktory

ILGenerator()

Inicializuje novou instanci ILGenerator třídy.

Vlastnosti

ILOffset

Získá aktuální posun v bajtech v datovém proudu microsoft intermediate language (MSIL), který je generován ILGeneratornástrojem .

Metody

BeginCatchBlock(Type)

Začne blok catch.

BeginExceptFilterBlock()

Začne blok výjimky pro filtrovanou výjimku.

BeginExceptionBlock()

Začne blok výjimky pro nefiltrovanou výjimku.

BeginFaultBlock()

Začne blok chyb výjimky ve streamu jazyka MSIL (Microsoft Intermediate Language).

BeginFinallyBlock()

Začne poslední blok v instrukčním streamu jazyka MSIL (Microsoft Intermediate Language).

BeginScope()

Začíná lexikální obor.

CreateLabel(Int32)

Vygeneruje pokyny jazyka MSIL (Microsoft Intermediate Language).

DeclareLocal(Type)

Deklaruje místní proměnnou zadaného typu.

DeclareLocal(Type, Boolean)

Deklaruje místní proměnnou zadaného typu a volitelně připne objekt, na který proměnná odkazuje.

DefineLabel()

Deklaruje nový popisek.

Emit(OpCode)

Vloží zadanou instrukce do datového proudu instrukcí.

Emit(OpCode, Byte)

Vloží zadaný argument instrukce a znaku do datového proudu instrukcí jazyka MSIL (Microsoft Intermediate Language).

Emit(OpCode, ConstructorInfo)

Vloží zadanou instrukci a token metadat pro zadaný konstruktor do datového proudu instrukcí jazyka MSIL (Microsoft Intermediate Language).

Emit(OpCode, Double)

Vloží zadanou instrukci a číselný argument do datového proudu instrukcí jazyka MSIL (Microsoft Intermediate Language).

Emit(OpCode, FieldInfo)

Vloží zadanou instrukci a token metadat pro zadané pole do datového proudu instrukcí jazyka MSIL (Microsoft Intermediate Language).

Emit(OpCode, Int16)

Vloží zadanou instrukci a číselný argument do datového proudu instrukcí jazyka MSIL (Microsoft Intermediate Language).

Emit(OpCode, Int32)

Vloží zadanou instrukci a číselný argument do datového proudu instrukcí jazyka MSIL (Microsoft Intermediate Language).

Emit(OpCode, Int64)

Vloží zadanou instrukci a číselný argument do datového proudu instrukcí jazyka MSIL (Microsoft Intermediate Language).

Emit(OpCode, Label)

Vloží zadanou instrukci do datového proudu jazyka MSIL (Microsoft Intermediate Language) a po dokončení oprav ponechá prostor pro zahrnutí popisku.

Emit(OpCode, Label[])

Vloží zadanou instrukci do datového proudu jazyka MSIL (Microsoft Intermediate Language) a po dokončení oprav ponechá prostor pro zahrnutí popisku.

Emit(OpCode, LocalBuilder)

Vloží zadanou instrukci do datového proudu jazyka MSIL (Microsoft Intermediate Language) následovaný indexem dané místní proměnné.

Emit(OpCode, MethodInfo)

Vloží zadanou instrukci do streamu microsoft intermediate language (MSIL) následovaný tokenem metadat pro danou metodu.

Emit(OpCode, SByte)

Vloží zadaný argument instrukce a znaku do datového proudu instrukcí jazyka MSIL (Microsoft Intermediate Language).

Emit(OpCode, SignatureHelper)

Vloží zadanou instrukci a token podpisu do datového proudu instrukcí jazyka MSIL (Microsoft Intermediate Language).

Emit(OpCode, Single)

Vloží zadanou instrukci a číselný argument do datového proudu instrukcí jazyka MSIL (Microsoft Intermediate Language).

Emit(OpCode, String)

Vloží zadanou instrukci do datového proudu jazyka MSIL (Microsoft Intermediate Language) následovaný tokenem metadat pro daný řetězec.

Emit(OpCode, Type)

Vloží zadanou instrukce do datového proudu jazyka MSIL (Microsoft Intermediate Language) následovaný tokenem metadat pro daný typ.

EmitCall(OpCode, MethodInfo, Type[])

call Vloží instrukci nebo callvirt do datového proudu jazyka MSIL (Microsoft Intermediate Language) pro volání varargs metody.

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

Calli Vloží instrukce do datového proudu Microsoft Intermediate Language (MSIL) a určí nespravovanou konvenci volání pro nepřímé volání.

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

Calli Vloží instrukce do datového proudu jazyka MSIL (Microsoft Intermediate Language) a určí konvenci spravovaného volání pro nepřímé volání.

EmitWriteLine(FieldInfo)

Vygeneruje jazyk MSIL (Microsoft Intermediate Language) potřebný k volání WriteLine s daným polem.

EmitWriteLine(LocalBuilder)

Vygeneruje jazyk MSIL (Microsoft Intermediate Language) potřebný k volání WriteLine s danou místní proměnnou.

EmitWriteLine(String)

Vygeneruje jazyk MSIL (Microsoft Intermediate Language) pro volání WriteLine s řetězcem.

EndExceptionBlock()

Ukončí blok výjimek.

EndScope()

Ukončí lexikální obor.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
MarkLabel(Label)

Označí aktuální pozici streamu microsoft intermediate language (MSIL) s daným popiskem.

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

Označí bod sekvence ve streamu microsoft intermediate language (MSIL).

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ThrowException(Type)

Vygeneruje pokyn k vyvolání výjimky.

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)
UsingNamespace(String)

Určuje obor názvů, který se má použít při vyhodnocování místních hodnot, a sleduje aktuální aktivní lexikální obor.

Explicitní implementace rozhraní

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

Mapuje sadu názvů na odpovídající sadu identifikátorů pro rozesílání.

_ILGenerator.GetTypeInfo(UInt32, UInt32, IntPtr)

Načte informace o typu objektu, který lze použít k získání informací o typu pro rozhraní.

_ILGenerator.GetTypeInfoCount(UInt32)

Získá počet rozhraní typu informací, které objekt poskytuje (0 nebo 1).

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

Poskytuje přístup k vlastnostem a metodám vystaveným objektem.

Platí pro