ILGenerator Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Genera istruzioni 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
- Ereditarietà
-
ILGenerator
- Attributi
- Implementazioni
Commenti
ILGenerator viene usato per generare corpi di metodo per metodi e costruttori negli assembly dinamici (rappresentati dalle MethodBuilder classi e ConstructorBuilder ) e per i metodi dinamici autonomi (rappresentati dalla DynamicMethod classe ). Per ottenere un ILGeneratoroggetto , utilizzare i ConstructorBuilder.GetILGeneratormetodi , DynamicMethod.GetILGeneratore MethodBuilder.GetILGenerator .
MSIL viene usato come input per un compilatore JIT (Just-In-Time).
Costruttori
ILGenerator() |
Inizializza una nuova istanza della classe ILGenerator. |
Proprietà
ILOffset |
Ottiene l'offset corrente, in byte, nel flusso Microsoft Intermediate Language (MSIL) emesso dall'oggetto ILGenerator. |
Metodi
BeginCatchBlock(Type) |
Inizia un blocco catch. |
BeginExceptFilterBlock() |
Inizia un blocco di eccezioni per un'eccezione filtrata. |
BeginExceptionBlock() |
Inizia un blocco di eccezioni per un'eccezione non filtrata. |
BeginFaultBlock() |
Inizia un blocco di errori delle eccezioni nel flusso MSIL (Microsoft Intermediate Language). |
BeginFinallyBlock() |
Inizia un blocco finally nel flusso di istruzioni MSIL (Microsoft Intermediate Language). |
BeginScope() |
Inizia un ambito lessicale. |
CreateLabel(Int32) |
Genera istruzioni MSIL (Microsoft Intermediate Language). |
DeclareLocal(Type) |
Dichiara una variabile locale del tipo specificato. |
DeclareLocal(Type, Boolean) |
Dichiara una variabile locale del tipo specificato che facoltativamente può bloccare l'oggetto a cui fa riferimento la variabile. |
DefineLabel() |
Dichiara una nuova etichetta. |
Emit(OpCode) |
Inserisce l'istruzione specificata nel flusso di istruzioni. |
Emit(OpCode, Byte) |
Inserisce l'istruzione e l'argomento del carattere specificati nel flusso di istruzioni MSIL (Microsoft Intermediate Language). |
Emit(OpCode, ConstructorInfo) |
Inserisce l'istruzione e il token di metadati specificati per il costruttore indicato nel flusso di istruzioni MSIL (Microsoft Intermediate Language). |
Emit(OpCode, Double) |
Inserisce l'istruzione e l'argomento numerico specificati nel flusso di istruzioni MSIL (Microsoft Intermediate Language). |
Emit(OpCode, FieldInfo) |
Inserisce l'istruzione e il token di metadati specificati per il campo indicato nel flusso di istruzioni MSIL (Microsoft Intermediate Language). |
Emit(OpCode, Int16) |
Inserisce l'istruzione e l'argomento numerico specificati nel flusso di istruzioni MSIL (Microsoft Intermediate Language). |
Emit(OpCode, Int32) |
Inserisce l'istruzione e l'argomento numerico specificati nel flusso di istruzioni MSIL (Microsoft Intermediate Language). |
Emit(OpCode, Int64) |
Inserisce l'istruzione e l'argomento numerico specificati nel flusso di istruzioni MSIL (Microsoft Intermediate Language). |
Emit(OpCode, Label) |
Inserisce l'istruzione specificata nel flusso MSIL (Microsoft Intermediate Language) e lascia spazio per includere un'etichetta dopo l'esecuzione delle correzioni. |
Emit(OpCode, Label[]) |
Inserisce l'istruzione specificata nel flusso MSIL (Microsoft Intermediate Language) e lascia spazio per includere un'etichetta dopo l'esecuzione delle correzioni. |
Emit(OpCode, LocalBuilder) |
Inserisce l'istruzione specificata nel flusso MSIL (Microsoft Intermediate Language), seguita dall'indice della variabile locale indicata. |
Emit(OpCode, MethodInfo) |
Inserisce l'istruzione specificata nel flusso MSIL (Microsoft Intermediate Language), seguita dal token di metadati per il metodo indicato. |
Emit(OpCode, SByte) |
Inserisce l'istruzione e l'argomento del carattere specificati nel flusso di istruzioni MSIL (Microsoft Intermediate Language). |
Emit(OpCode, SignatureHelper) |
Inserisce l'istruzione specificata e un token di firme nel flusso di istruzioni MSIL (Microsoft Intermediate Language). |
Emit(OpCode, Single) |
Inserisce l'istruzione e l'argomento numerico specificati nel flusso di istruzioni MSIL (Microsoft Intermediate Language). |
Emit(OpCode, String) |
Inserisce l'istruzione specificata nel flusso MSIL (Microsoft Intermediate Language), seguita dal token di metadati per la stringa indicata. |
Emit(OpCode, Type) |
Inserisce l'istruzione specificata nel flusso MSIL (Microsoft Intermediate Language), seguita dal token di metadati per il tipo indicato. |
EmitCall(OpCode, MethodInfo, Type[]) |
Inserisce un'istruzione |
EmitCalli(OpCode, CallingConvention, Type, Type[]) |
Inserisce un'istruzione Calli nel flusso di istruzioni MSIL (Microsoft Intermediate Language), specificando una convenzione di chiamata non gestita per la chiamata indiretta. |
EmitCalli(OpCode, CallingConventions, Type, Type[], Type[]) |
Inserisce un'istruzione Calli nel flusso di istruzioni MSIL (Microsoft Intermediate Language), specificando una convenzione di chiamata gestita per la chiamata indiretta. |
EmitWriteLine(FieldInfo) |
Crea il flusso MSIL (Microsoft Intermediate Language) necessario per chiamare il metodo WriteLine con il campo indicato. |
EmitWriteLine(LocalBuilder) |
Crea il linguaggio MSIL (Microsoft Intermediate Language) necessario per chiamare WriteLine con la variabile locale specificata. |
EmitWriteLine(String) |
Crea il flusso MSIL (Microsoft Intermediate Language) necessario per chiamare il metodo WriteLine con una stringa. |
EndExceptionBlock() |
Termina un blocco di eccezioni. |
EndScope() |
Termina un ambito lessicale. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
MarkLabel(Label) |
Contrassegna la posizione corrente del flusso MSIL (Microsoft Intermediate Language) con l'etichetta indicata. |
MarkSequencePoint(ISymbolDocumentWriter, Int32, Int32, Int32, Int32) |
Contrassegna un punto di sequenza nel flusso MSIL (Microsoft Intermediate Language). |
MarkSequencePointCore(ISymbolDocumentWriter, Int32, Int32, Int32, Int32) |
Genera istruzioni MSIL (Microsoft Intermediate Language). |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ThrowException(Type) |
Crea un'istruzione per generare un'eccezione. |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
UsingNamespace(String) |
Specifica lo spazio dei nomi da utilizzare nella valutazione delle variabili locali e controlla l'ambito lessicale attualmente attivo. |
Implementazioni dell'interfaccia esplicita
_ILGenerator.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Esegue il mapping di un set di nomi a un set corrispondente di ID dispatch. |
_ILGenerator.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera le informazioni sul tipo relative a un oggetto che può quindi essere usato per ottenere informazioni sul tipo relative a un'interfaccia. |
_ILGenerator.GetTypeInfoCount(UInt32) |
Recupera il numero delle interfacce di informazioni sul tipo fornite da un oggetto (0 o 1). |
_ILGenerator.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fornisce l'accesso a proprietà e metodi esposti da un oggetto. |
Si applica a
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per