Bagikan melalui


ILGenerator Kelas

Definisi

Menghasilkan instruksi bahasa perantara 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
Warisan
ILGenerator
Atribut
Penerapan

Keterangan

ILGenerator digunakan untuk menghasilkan badan metode untuk metode dan konstruktor dalam rakitan dinamis (diwakili oleh kelas MethodBuilder dan ConstructorBuilder) dan untuk metode dinamis mandiri (diwakili oleh kelas DynamicMethod). Untuk mendapatkan ILGenerator, gunakan metode ConstructorBuilder.GetILGenerator, DynamicMethod.GetILGenerator, dan MethodBuilder.GetILGenerator.

MSIL digunakan sebagai input ke kompilator just-in-time (JIT).

Konstruktor

ILGenerator()

Menginisialisasi instans baru kelas ILGenerator.

Properti

ILOffset

Mendapatkan offset saat ini, dalam byte, dalam aliran bahasa perantara Microsoft (MSIL) yang sedang dipancarkan oleh ILGenerator.

Metode

BeginCatchBlock(Type)

Memulai blok tangkapan.

BeginExceptFilterBlock()

Memulai blok pengecualian untuk pengecualian yang difilter.

BeginExceptionBlock()

Memulai blok pengecualian untuk pengecualian yang tidak difilter.

BeginFaultBlock()

Memulai blok kesalahan pengecualian di aliran bahasa perantara Microsoft (MSIL).

BeginFinallyBlock()

Memulai blok akhirnya dalam aliran instruksi bahasa perantara Microsoft (MSIL).

BeginScope()

Memulai cakupan leksikal.

CreateLabel(Int32)

Membuat Label dengan ID yang diberikan.

DeclareLocal(Type)

Mendeklarasikan variabel lokal dari jenis yang ditentukan.

DeclareLocal(Type, Boolean)

Mendeklarasikan variabel lokal dari jenis yang ditentukan, secara opsional menyematkan objek yang dirujuk oleh variabel.

DefineLabel()

Mendeklarasikan label baru.

Emit(OpCode)

Menempatkan instruksi yang ditentukan ke aliran instruksi.

Emit(OpCode, Byte)

Menempatkan instruksi dan argumen karakter yang ditentukan ke aliran instruksi bahasa perantara Microsoft (MSIL).

Emit(OpCode, ConstructorInfo)

Menempatkan token instruksi dan metadata yang ditentukan untuk konstruktor yang ditentukan ke aliran instruksi bahasa perantara Microsoft (MSIL).

Emit(OpCode, Double)

Menempatkan instruksi dan argumen numerik yang ditentukan ke aliran instruksi bahasa perantara Microsoft (MSIL).

Emit(OpCode, FieldInfo)

Menempatkan token instruksi dan metadata yang ditentukan untuk bidang yang ditentukan ke aliran instruksi bahasa perantara Microsoft (MSIL).

Emit(OpCode, Int16)

Menempatkan instruksi dan argumen numerik yang ditentukan ke aliran instruksi bahasa perantara Microsoft (MSIL).

Emit(OpCode, Int32)

Menempatkan instruksi dan argumen numerik yang ditentukan ke aliran instruksi bahasa perantara Microsoft (MSIL).

Emit(OpCode, Int64)

Menempatkan instruksi dan argumen numerik yang ditentukan ke aliran instruksi bahasa perantara Microsoft (MSIL).

Emit(OpCode, Label)

Menempatkan instruksi yang ditentukan ke aliran bahasa perantara Microsoft (MSIL) dan meninggalkan ruang untuk menyertakan label saat perbaikan selesai.

Emit(OpCode, Label[])

Menempatkan instruksi yang ditentukan ke aliran bahasa perantara Microsoft (MSIL) dan meninggalkan ruang untuk menyertakan label saat perbaikan selesai.

Emit(OpCode, LocalBuilder)

Menempatkan instruksi yang ditentukan ke aliran bahasa perantara Microsoft (MSIL) diikuti oleh indeks variabel lokal yang diberikan.

Emit(OpCode, MethodInfo)

Menempatkan instruksi yang ditentukan ke aliran bahasa perantara Microsoft (MSIL) diikuti dengan token metadata untuk metode yang diberikan.

Emit(OpCode, SByte)

Menempatkan instruksi dan argumen karakter yang ditentukan ke aliran instruksi bahasa perantara Microsoft (MSIL).

Emit(OpCode, SignatureHelper)

Menempatkan instruksi yang ditentukan dan token tanda tangan ke aliran instruksi bahasa perantara Microsoft (MSIL).

Emit(OpCode, Single)

Menempatkan instruksi dan argumen numerik yang ditentukan ke aliran instruksi bahasa perantara Microsoft (MSIL).

Emit(OpCode, String)

Menempatkan instruksi yang ditentukan ke aliran bahasa perantara Microsoft (MSIL) diikuti dengan token metadata untuk string yang diberikan.

Emit(OpCode, Type)

Menempatkan instruksi yang ditentukan ke aliran bahasa perantara Microsoft (MSIL) diikuti dengan token metadata untuk jenis yang diberikan.

EmitCall(OpCode, MethodInfo, Type[])

Menempatkan instruksi call atau callvirt ke aliran bahasa perantara Microsoft (MSIL) untuk memanggil metode varargs.

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

Menempatkan instruksi Calli ke aliran bahasa perantara Microsoft (MSIL), menentukan konvensi panggilan yang tidak dikelola untuk panggilan tidak langsung.

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

Menempatkan instruksi Calli ke aliran bahasa perantara Microsoft (MSIL), menentukan konvensi panggilan terkelola untuk panggilan tidak langsung.

EmitWriteLine(FieldInfo)

Memancarkan bahasa perantara Microsoft (MSIL) yang diperlukan untuk memanggil WriteLine dengan bidang tertentu.

EmitWriteLine(LocalBuilder)

Memancarkan bahasa perantara Microsoft (MSIL) yang diperlukan untuk memanggil WriteLine dengan variabel lokal yang diberikan.

EmitWriteLine(String)

Memancarkan bahasa perantara Microsoft (MSIL) untuk memanggil WriteLine dengan string.

EndExceptionBlock()

Mengakhiri blok pengecualian.

EndScope()

Mengakhiri cakupan leksikal.

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan Type instans saat ini.

(Diperoleh dari Object)
MarkLabel(Label)

Menandai posisi aliran bahasa perantara Microsoft (MSIL) saat ini dengan label yang diberikan.

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

Menandai titik urutan dalam aliran bahasa perantara Microsoft (MSIL).

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

Saat ditimpa di kelas turunan, menandai titik urutan dalam aliran bahasa perantara Microsoft (MSIL).

MemberwiseClone()

Membuat salinan dangkal dari Objectsaat ini.

(Diperoleh dari Object)
ThrowException(Type)

Memancarkan instruksi untuk melemparkan pengecualian.

ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)
UsingNamespace(String)

Menentukan namespace yang akan digunakan dalam mengevaluasi lokal dan jam tangan untuk cakupan leksikal aktif saat ini.

Implementasi Antarmuka Eksplisit

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

Memetakan sekumpulan nama ke sekumpulan pengidentifikasi pengiriman yang sesuai.

_ILGenerator.GetTypeInfo(UInt32, UInt32, IntPtr)

Mengambil informasi jenis untuk objek, yang kemudian dapat digunakan untuk mendapatkan informasi jenis untuk antarmuka.

_ILGenerator.GetTypeInfoCount(UInt32)

Mengambil jumlah antarmuka informasi jenis yang disediakan objek (baik 0 atau 1).

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

Menyediakan akses ke properti dan metode yang diekspos oleh objek.

Berlaku untuk