ILGenerator クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
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
- 継承
-
ILGenerator
- 属性
- 実装
注釈
ILGeneratorは、動的アセンブリ (および クラスで表される) 内のメソッドとコンストラクター、およびスタンドアロンの動的メソッド (クラスでMethodBuilderConstructorBuilder表される) のメソッド本体をDynamicMethod生成するために使用されます。 をILGenerator取得するには、ConstructorBuilder.GetILGeneratorDynamicMethod.GetILGeneratorおよび メソッドをMethodBuilder.GetILGenerator使用します。
MSIL は、Just-In-Time (JIT) コンパイラへの入力として使用されます。
コンストラクター
ILGenerator() |
ILGenerator クラスの新しいインスタンスを初期化します。 |
プロパティ
ILOffset |
ILGenerator によって生成されている MSIL (Microsoft Intermediate Language) ストリーム内の現在のオフセットをバイト単位で取得します。 |
メソッド
BeginCatchBlock(Type) |
Catch ブロックを開始します。 |
BeginExceptFilterBlock() |
フィルター処理された例外の例外ブロックを開始します。 |
BeginExceptionBlock() |
フィルター処理されない例外の例外ブロックを開始します。 |
BeginFaultBlock() |
MSIL (Microsoft Intermediate Language) ストリームで例外フォールト ブロックを開始します。 |
BeginFinallyBlock() |
MSIL (Microsoft Intermediate Language) 命令ストリームで finally ブロックを開始します。 |
BeginScope() |
構文のスコープを開始します。 |
CreateLabel(Int32) |
MSIL (Microsoft Intermediate Language) 命令を生成します。 |
DeclareLocal(Type) |
指定した型のローカル変数を宣言します。 |
DeclareLocal(Type, Boolean) |
指定した型のローカル変数を宣言し、オプションでその変数が参照するオブジェクトを固定します。 |
DefineLabel() |
新しいラベルを宣言します。 |
Emit(OpCode) |
指定された命令を命令のストリームに書き込みます。 |
Emit(OpCode, Byte) |
命令の MSIL (Microsoft Intermediate Language) ストリームに、指定した命令と文字引数を書き込みます。 |
Emit(OpCode, ConstructorInfo) |
命令の MSIL (Microsoft Intermediate Language) ストリームに、指定したコンストラクターの指定した命令とメタデータ トークンを書き込みます。 |
Emit(OpCode, Double) |
命令の MSIL (Microsoft Intermediate Language) ストリームに、指定した命令と数値引数を書き込みます。 |
Emit(OpCode, FieldInfo) |
命令の MSIL (Microsoft Intermediate Language) ストリームに、指定したフィールドの指定した命令とメタデータ トークンを書き込みます。 |
Emit(OpCode, Int16) |
命令の MSIL (Microsoft Intermediate Language) ストリームに、指定した命令と数値引数を書き込みます。 |
Emit(OpCode, Int32) |
命令の MSIL (Microsoft Intermediate Language) ストリームに、指定した命令と数値引数を書き込みます。 |
Emit(OpCode, Int64) |
命令の MSIL (Microsoft Intermediate Language) ストリームに、指定した命令と数値引数を書き込みます。 |
Emit(OpCode, Label) |
指定された命令を MSIL (Microsoft Intermediate Language) ストリームに書き込み、位置を確定した後でラベルを格納する領域を残します。 |
Emit(OpCode, Label[]) |
指定された命令を MSIL (Microsoft Intermediate Language) ストリームに書き込み、位置を確定した後でラベルを格納する領域を残します。 |
Emit(OpCode, LocalBuilder) |
指定された命令を MSIL (Microsoft Intermediate Language) ストリームに書き込み、その後ろに指定されたローカル変数のインデックスを書き込みます。 |
Emit(OpCode, MethodInfo) |
指定された命令を MSIL ストリームに書き込み、その後ろに指定されたメソッドのメタデータ トークンを書き込みます。 |
Emit(OpCode, SByte) |
命令の MSIL (Microsoft Intermediate Language) ストリームに、指定した命令と文字引数を書き込みます。 |
Emit(OpCode, SignatureHelper) |
命令の MSIL (Microsoft Intermediate Language) ストリームに、指定した命令とシグネチャ トークンを書き込みます。 |
Emit(OpCode, Single) |
命令の MSIL (Microsoft Intermediate Language) ストリームに、指定した命令と数値引数を書き込みます。 |
Emit(OpCode, String) |
指定された命令を MSIL ストリームに書き込み、その後ろに指定された文字列のメタデータ トークンを書き込みます。 |
Emit(OpCode, Type) |
指定された命令を MSIL ストリームに書き込み、その後ろに指定された型のメタデータ トークンを書き込みます。 |
EmitCall(OpCode, MethodInfo, Type[]) |
Microsoft intermediate language (MSIL) ストリームに、 |
EmitCalli(OpCode, CallingConvention, Type, Type[]) |
間接的な呼び出しにアンマネージ呼び出し規約を指定して、MSIL (Microsoft Intermediate Language) ストリームに Calli 命令を書き込みます。 |
EmitCalli(OpCode, CallingConventions, Type, Type[], Type[]) |
間接的な呼び出しにマネージド呼び出し規約を指定して、MSIL (Microsoft Intermediate Language) ストリームに Calli 命令を書き込みます。 |
EmitWriteLine(FieldInfo) |
指定したフィールドを使用して WriteLine を呼び出すために必要な MSIL を生成します。 |
EmitWriteLine(LocalBuilder) |
指定されたローカル変数で WriteLine を呼び出すのに必要な Microsoft Intermediate Language (MSIL) を生成します。 |
EmitWriteLine(String) |
文字列を使用して WriteLine を呼び出す MSIL を生成します。 |
EndExceptionBlock() |
例外ブロックを終了します。 |
EndScope() |
構文のスコープを終了します。 |
Equals(Object) |
指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
MarkLabel(Label) |
指定したラベルを使用して、MSIL (Microsoft Intermediate Language) ストリームの現在の位置をマークします。 |
MarkSequencePoint(ISymbolDocumentWriter, Int32, Int32, Int32, Int32) |
MSIL (Microsoft Intermediate Language) ストリーム内のシーケンス ポイントをマークします。 |
MarkSequencePointCore(ISymbolDocumentWriter, Int32, Int32, Int32, Int32) |
MSIL (Microsoft Intermediate Language) 命令を生成します。 |
MemberwiseClone() |
現在の Object の簡易コピーを作成します。 (継承元 Object) |
ThrowException(Type) |
例外をスローする命令を生成します。 |
ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
UsingNamespace(String) |
現在のアクティブな構文のスコープのローカルとウォッチの評価で使用する名前空間を指定します。 |
明示的なインターフェイスの実装
_ILGenerator.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
一連の名前を対応する一連のディスパッチ識別子に割り当てます。 |
_ILGenerator.GetTypeInfo(UInt32, UInt32, IntPtr) |
オブジェクトの型情報を取得します。この型情報を使用して、インターフェイスの型情報を取得できます。 |
_ILGenerator.GetTypeInfoCount(UInt32) |
オブジェクトが提供する型情報インターフェイスの数 (0 または 1) を取得します。 |
_ILGenerator.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
オブジェクトによって公開されたプロパティおよびメソッドへのアクセスを提供します。 |
適用対象
.NET
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示