Udostępnij za pośrednictwem


ILGenerator Klasa

Definicja

Generuje instrukcje dotyczące języka Microsoft Intermediate Language (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
Dziedziczenie
ILGenerator
Atrybuty
Implementuje

Uwagi

ILGenerator służy do generowania treści metod dla metod i konstruktorów w zestawach dynamicznych (reprezentowanych przez klasy MethodBuilder i ConstructorBuilder) oraz dla autonomicznych metod dynamicznych (reprezentowanych przez klasę DynamicMethod). Aby uzyskać ILGenerator, użyj metod ConstructorBuilder.GetILGenerator, DynamicMethod.GetILGeneratori MethodBuilder.GetILGenerator.

Język MSIL jest używany jako dane wejściowe kompilatora typu just in time (JIT).

Konstruktory

ILGenerator()

Inicjuje nowe wystąpienie klasy ILGenerator.

Właściwości

ILOffset

Pobiera bieżące przesunięcie w bajtach w strumieniu języka microsoft intermediate language (MSIL), który jest emitowany przez ILGenerator.

Metody

BeginCatchBlock(Type)

Rozpoczyna blok catch.

BeginExceptFilterBlock()

Rozpoczyna blok wyjątku dla filtrowanego wyjątku.

BeginExceptionBlock()

Rozpoczyna blok wyjątku dla wyjątku niefiltrowanego.

BeginFaultBlock()

Rozpoczyna blok błędów wyjątku w strumieniu języka microsoft intermediate language (MSIL).

BeginFinallyBlock()

Rozpoczyna blok w końcu w strumieniu instrukcji języka Microsoft Intermediate Language (MSIL).

BeginScope()

Rozpoczyna zakres leksykalny.

CreateLabel(Int32)

Tworzy Label z danym identyfikatorem.

DeclareLocal(Type)

Deklaruje zmienną lokalną określonego typu.

DeclareLocal(Type, Boolean)

Deklaruje zmienną lokalną określonego typu, opcjonalnie przypinając obiekt, do której odwołuje się zmienna.

DefineLabel()

Deklaruje nową etykietę.

Emit(OpCode)

Umieszcza określoną instrukcję na strumieniu instrukcji.

Emit(OpCode, Byte)

Umieszcza określoną instrukcję i argument znaku na strumieniu instrukcji języka Microsoft Intermediate Language (MSIL).

Emit(OpCode, ConstructorInfo)

Umieszcza określoną instrukcję i token metadanych dla określonego konstruktora na strumieniu instrukcji języka Microsoft Intermediate Language (MSIL).

Emit(OpCode, Double)

Umieszcza określoną instrukcję i argument liczbowy na strumieniu instrukcji języka Microsoft Intermediate Language (MSIL).

Emit(OpCode, FieldInfo)

Umieszcza określony token instrukcji i metadanych dla określonego pola na strumień instrukcji języka Microsoft Intermediate Language (MSIL).

Emit(OpCode, Int16)

Umieszcza określoną instrukcję i argument liczbowy na strumieniu instrukcji języka Microsoft Intermediate Language (MSIL).

Emit(OpCode, Int32)

Umieszcza określoną instrukcję i argument liczbowy na strumieniu instrukcji języka Microsoft Intermediate Language (MSIL).

Emit(OpCode, Int64)

Umieszcza określoną instrukcję i argument liczbowy na strumieniu instrukcji języka Microsoft Intermediate Language (MSIL).

Emit(OpCode, Label)

Umieszcza określoną instrukcję w strumieniu języka Microsoft Intermediate Language (MSIL) i pozostawia miejsce, aby dołączyć etykietę po zakończeniu poprawek.

Emit(OpCode, Label[])

Umieszcza określoną instrukcję w strumieniu języka Microsoft Intermediate Language (MSIL) i pozostawia miejsce, aby dołączyć etykietę po zakończeniu poprawek.

Emit(OpCode, LocalBuilder)

Umieszcza określoną instrukcję w strumieniu języka microsoft intermediate language (MSIL), po którym następuje indeks danej zmiennej lokalnej.

Emit(OpCode, MethodInfo)

Umieszcza określoną instrukcję w strumieniu języka Microsoft Intermediate Language (MSIL), a następnie token metadanych dla danej metody.

Emit(OpCode, SByte)

Umieszcza określoną instrukcję i argument znaku na strumieniu instrukcji języka Microsoft Intermediate Language (MSIL).

Emit(OpCode, SignatureHelper)

Umieszcza określoną instrukcję i token podpisu na strumieniu instrukcji języka Microsoft Intermediate Language (MSIL).

Emit(OpCode, Single)

Umieszcza określoną instrukcję i argument liczbowy na strumieniu instrukcji języka Microsoft Intermediate Language (MSIL).

Emit(OpCode, String)

Umieszcza określoną instrukcję w strumieniu języka microsoft intermediate language (MSIL), a następnie token metadanych dla danego ciągu.

Emit(OpCode, Type)

Umieszcza określoną instrukcję w strumieniu języka microsoft intermediate language (MSIL), a następnie token metadanych dla danego typu.

EmitCall(OpCode, MethodInfo, Type[])

Umieszcza instrukcję call lub callvirt na strumieniu języka pośredniego firmy Microsoft (MSIL), aby wywołać metodę varargs.

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

Umieszcza instrukcję Calli na strumieniu języka pośredniego (MSIL) firmy Microsoft, określając niezarządzaną konwencję wywoływania dla wywołania pośredniego.

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

Umieszcza instrukcję Calli na strumieniu języka pośredniego (MSIL) firmy Microsoft, określając zarządzaną konwencję wywoływania dla wywołania pośredniego.

EmitWriteLine(FieldInfo)

Emituje język microsoft intermediate language (MSIL) niezbędny do wywołania WriteLine z danym polem.

EmitWriteLine(LocalBuilder)

Emituje język microsoft intermediate language (MSIL) niezbędny do wywołania WriteLine z daną zmienną lokalną.

EmitWriteLine(String)

Emituje język microsoft intermediate language (MSIL) w celu wywołania WriteLine za pomocą ciągu.

EndExceptionBlock()

Kończy blok wyjątku.

EndScope()

Kończy zakres leksykalny.

Equals(Object)

Określa, czy określony obiekt jest równy bieżącemu obiektowi.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Pobiera Type bieżącego wystąpienia.

(Odziedziczone po Object)
MarkLabel(Label)

Oznacza bieżącą pozycję strumienia języka Microsoft Intermediate Language (MSIL) z daną etykietą.

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

Oznacza punkt sekwencji w strumieniu języka microsoft intermediate language (MSIL).

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

Po zastąpieniu w klasie pochodnej oznacza punkt sekwencji w strumieniu języka microsoft intermediate language (MSIL).

MemberwiseClone()

Tworzy płytkią kopię bieżącego Object.

(Odziedziczone po Object)
ThrowException(Type)

Emituje instrukcję w celu zgłoszenia wyjątku.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
UsingNamespace(String)

Określa przestrzeń nazw, która ma być używana w ocenie ustawień lokalnych i obserwuje bieżący aktywny zakres leksykalny.

Jawne implementacje interfejsu

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

Mapuje zestaw nazw na odpowiedni zestaw identyfikatorów wysyłki.

_ILGenerator.GetTypeInfo(UInt32, UInt32, IntPtr)

Pobiera informacje o typie dla obiektu, którego następnie można użyć do pobrania informacji o typie dla interfejsu.

_ILGenerator.GetTypeInfoCount(UInt32)

Pobiera liczbę interfejsów informacyjnych typu zapewnianych przez obiekt (0 lub 1).

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

Zapewnia dostęp do właściwości i metod uwidocznionych przez obiekt.

Dotyczy