Bagikan melalui


MethodBodyStreamEncoder.AddMethodBody Metode

Definisi

Overload

AddMethodBody(InstructionEncoder, Int32, StandaloneSignatureHandle, MethodBodyAttributes)

Mengodekan isi metode dan menambahkannya ke aliran isi metode.

AddMethodBody(InstructionEncoder, Int32, StandaloneSignatureHandle, MethodBodyAttributes, Boolean)

Mengodekan isi metode dan menambahkannya ke aliran isi metode, menggunakan encoder instruksi yang disediakan, ukuran tumpukan maksimum, handel tanda tangan variabel lokal, atribut isi metode, dan memungkinkan untuk menunjukkan apakah metode harus dialokasikan dari kumpulan memori lokal dinamis atau tidak.

AddMethodBody(Int32, Int32, Int32, Boolean, StandaloneSignatureHandle, MethodBodyAttributes)

Mengodekan isi metode dan menambahkannya ke aliran isi metode, menggunakan ukuran kode yang disediakan, ukuran tumpukan maksimum, jumlah wilayah pengecualian, handel tanda tangan variabel lokal, atribut isi metode, dan memungkinkan untuk menunjukkan apakah wilayah pengecualian harus dikodekan dalam format kecil atau tidak.

AddMethodBody(Int32, Int32, Int32, Boolean, StandaloneSignatureHandle, MethodBodyAttributes, Boolean)

Mengodekan isi metode dan menambahkannya ke aliran isi metode, menggunakan ukuran kode yang disediakan, ukuran tumpukan maksimum, jumlah wilayah pengecualian, handel tanda tangan variabel lokal, atribut isi metode, memungkinkan untuk menunjukkan apakah wilayah pengecualian harus dikodekan dalam format kecil atau tidak, dan memungkinkan untuk menunjukkan apakah metode harus dialokasikan dari kumpulan memori lokal dinamis atau tidak.

AddMethodBody(InstructionEncoder, Int32, StandaloneSignatureHandle, MethodBodyAttributes)

Sumber:
MethodBodyStreamEncoder.cs
Sumber:
MethodBodyStreamEncoder.cs
Sumber:
MethodBodyStreamEncoder.cs

Mengodekan isi metode dan menambahkannya ke aliran isi metode.

public:
 int AddMethodBody(System::Reflection::Metadata::Ecma335::InstructionEncoder instructionEncoder, int maxStack, System::Reflection::Metadata::StandaloneSignatureHandle localVariablesSignature, System::Reflection::Metadata::Ecma335::MethodBodyAttributes attributes);
public int AddMethodBody (System.Reflection.Metadata.Ecma335.InstructionEncoder instructionEncoder, int maxStack, System.Reflection.Metadata.StandaloneSignatureHandle localVariablesSignature, System.Reflection.Metadata.Ecma335.MethodBodyAttributes attributes);
public int AddMethodBody (System.Reflection.Metadata.Ecma335.InstructionEncoder instructionEncoder, int maxStack = 8, System.Reflection.Metadata.StandaloneSignatureHandle localVariablesSignature = default, System.Reflection.Metadata.Ecma335.MethodBodyAttributes attributes = System.Reflection.Metadata.Ecma335.MethodBodyAttributes.InitLocals);
member this.AddMethodBody : System.Reflection.Metadata.Ecma335.InstructionEncoder * int * System.Reflection.Metadata.StandaloneSignatureHandle * System.Reflection.Metadata.Ecma335.MethodBodyAttributes -> int
Public Function AddMethodBody (instructionEncoder As InstructionEncoder, maxStack As Integer, localVariablesSignature As StandaloneSignatureHandle, attributes As MethodBodyAttributes) As Integer
Public Function AddMethodBody (instructionEncoder As InstructionEncoder, Optional maxStack As Integer = 8, Optional localVariablesSignature As StandaloneSignatureHandle = Nothing, Optional attributes As MethodBodyAttributes = System.Reflection.Metadata.Ecma335.MethodBodyAttributes.InitLocals) As Integer

Parameter

instructionEncoder
InstructionEncoder

Encoder instruksi.

maxStack
Int32

Ukuran tumpukan maksimum.

localVariablesSignature
StandaloneSignatureHandle

Handel tanda tangan variabel lokal.

attributes
MethodBodyAttributes

Atribut isi metode.

Mengembalikan

Offset isi yang dikodekan dalam aliran isi metode.

Pengecualian

instructionEncoder memiliki nilai default.

maxStack berada di luar rentang [0, UInt16.MaxValue].

Label yang ditargetkan oleh cabang dalam aliran instruksi belum ditandai, atau jarak antara instruksi cabang dan label target tidak sesuai dengan ukuran operand instruksi.

Berlaku untuk

AddMethodBody(InstructionEncoder, Int32, StandaloneSignatureHandle, MethodBodyAttributes, Boolean)

Sumber:
MethodBodyStreamEncoder.cs
Sumber:
MethodBodyStreamEncoder.cs
Sumber:
MethodBodyStreamEncoder.cs

Mengodekan isi metode dan menambahkannya ke aliran isi metode, menggunakan encoder instruksi yang disediakan, ukuran tumpukan maksimum, handel tanda tangan variabel lokal, atribut isi metode, dan memungkinkan untuk menunjukkan apakah metode harus dialokasikan dari kumpulan memori lokal dinamis atau tidak.

public int AddMethodBody (System.Reflection.Metadata.Ecma335.InstructionEncoder instructionEncoder, int maxStack = 8, System.Reflection.Metadata.StandaloneSignatureHandle localVariablesSignature = default, System.Reflection.Metadata.Ecma335.MethodBodyAttributes attributes = System.Reflection.Metadata.Ecma335.MethodBodyAttributes.InitLocals, bool hasDynamicStackAllocation = false);
member this.AddMethodBody : System.Reflection.Metadata.Ecma335.InstructionEncoder * int * System.Reflection.Metadata.StandaloneSignatureHandle * System.Reflection.Metadata.Ecma335.MethodBodyAttributes * bool -> int
Public Function AddMethodBody (instructionEncoder As InstructionEncoder, Optional maxStack As Integer = 8, Optional localVariablesSignature As StandaloneSignatureHandle = Nothing, Optional attributes As MethodBodyAttributes = System.Reflection.Metadata.Ecma335.MethodBodyAttributes.InitLocals, Optional hasDynamicStackAllocation As Boolean = false) As Integer

Parameter

instructionEncoder
InstructionEncoder

Encoder instruksi.

maxStack
Int32

Ukuran tumpukan maksimum.

localVariablesSignature
StandaloneSignatureHandle

Handel tanda tangan variabel lokal.

attributes
MethodBodyAttributes

Atribut isi metode.

hasDynamicStackAllocation
Boolean

true jika metode mengalokasikan dari kumpulan memori lokal dinamis (IL berisi localloc instruksi); false jika tidak.

Mengembalikan

Offset isi yang dikodekan dalam aliran isi metode.

Pengecualian

instructionEncoder memiliki nilai default.

maxStack berada di luar rentang [0, UInt16.MaxValue].

Label yang ditargetkan oleh cabang dalam aliran instruksi belum ditandai, atau jarak antara instruksi cabang dan label target tidak sesuai dengan ukuran operand instruksi.

Berlaku untuk

AddMethodBody(Int32, Int32, Int32, Boolean, StandaloneSignatureHandle, MethodBodyAttributes)

Sumber:
MethodBodyStreamEncoder.cs
Sumber:
MethodBodyStreamEncoder.cs
Sumber:
MethodBodyStreamEncoder.cs

Mengodekan isi metode dan menambahkannya ke aliran isi metode, menggunakan ukuran kode yang disediakan, ukuran tumpukan maksimum, jumlah wilayah pengecualian, handel tanda tangan variabel lokal, atribut isi metode, dan memungkinkan untuk menunjukkan apakah wilayah pengecualian harus dikodekan dalam format kecil atau tidak.

public:
 System::Reflection::Metadata::Ecma335::MethodBodyStreamEncoder::MethodBody AddMethodBody(int codeSize, int maxStack, int exceptionRegionCount, bool hasSmallExceptionRegions, System::Reflection::Metadata::StandaloneSignatureHandle localVariablesSignature, System::Reflection::Metadata::Ecma335::MethodBodyAttributes attributes);
public System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder.MethodBody AddMethodBody (int codeSize, int maxStack, int exceptionRegionCount, bool hasSmallExceptionRegions, System.Reflection.Metadata.StandaloneSignatureHandle localVariablesSignature, System.Reflection.Metadata.Ecma335.MethodBodyAttributes attributes);
public System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder.MethodBody AddMethodBody (int codeSize, int maxStack = 8, int exceptionRegionCount = 0, bool hasSmallExceptionRegions = true, System.Reflection.Metadata.StandaloneSignatureHandle localVariablesSignature = default, System.Reflection.Metadata.Ecma335.MethodBodyAttributes attributes = System.Reflection.Metadata.Ecma335.MethodBodyAttributes.InitLocals);
member this.AddMethodBody : int * int * int * bool * System.Reflection.Metadata.StandaloneSignatureHandle * System.Reflection.Metadata.Ecma335.MethodBodyAttributes -> System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder.MethodBody
Public Function AddMethodBody (codeSize As Integer, maxStack As Integer, exceptionRegionCount As Integer, hasSmallExceptionRegions As Boolean, localVariablesSignature As StandaloneSignatureHandle, attributes As MethodBodyAttributes) As MethodBodyStreamEncoder.MethodBody
Public Function AddMethodBody (codeSize As Integer, Optional maxStack As Integer = 8, Optional exceptionRegionCount As Integer = 0, Optional hasSmallExceptionRegions As Boolean = true, Optional localVariablesSignature As StandaloneSignatureHandle = Nothing, Optional attributes As MethodBodyAttributes = System.Reflection.Metadata.Ecma335.MethodBodyAttributes.InitLocals) As MethodBodyStreamEncoder.MethodBody

Parameter

codeSize
Int32

Jumlah byte yang akan dicadangkan untuk instruksi.

maxStack
Int32

Ukuran tumpukan maksimum.

exceptionRegionCount
Int32

Jumlah wilayah pengecualian.

hasSmallExceptionRegions
Boolean

true jika wilayah pengecualian harus dikodekan dalam format kecil; false Sebaliknya.

localVariablesSignature
StandaloneSignatureHandle

Handel tanda tangan variabel lokal.

attributes
MethodBodyAttributes

Atribut isi metode.

Mengembalikan

Offset isi yang dikodekan dalam aliran isi metode.

Pengecualian

codeSize, exceptionRegionCount, atau maxStack berada di luar rentang yang diizinkan.

Berlaku untuk

AddMethodBody(Int32, Int32, Int32, Boolean, StandaloneSignatureHandle, MethodBodyAttributes, Boolean)

Sumber:
MethodBodyStreamEncoder.cs
Sumber:
MethodBodyStreamEncoder.cs
Sumber:
MethodBodyStreamEncoder.cs

Mengodekan isi metode dan menambahkannya ke aliran isi metode, menggunakan ukuran kode yang disediakan, ukuran tumpukan maksimum, jumlah wilayah pengecualian, handel tanda tangan variabel lokal, atribut isi metode, memungkinkan untuk menunjukkan apakah wilayah pengecualian harus dikodekan dalam format kecil atau tidak, dan memungkinkan untuk menunjukkan apakah metode harus dialokasikan dari kumpulan memori lokal dinamis atau tidak.

public System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder.MethodBody AddMethodBody (int codeSize, int maxStack = 8, int exceptionRegionCount = 0, bool hasSmallExceptionRegions = true, System.Reflection.Metadata.StandaloneSignatureHandle localVariablesSignature = default, System.Reflection.Metadata.Ecma335.MethodBodyAttributes attributes = System.Reflection.Metadata.Ecma335.MethodBodyAttributes.InitLocals, bool hasDynamicStackAllocation = false);
member this.AddMethodBody : int * int * int * bool * System.Reflection.Metadata.StandaloneSignatureHandle * System.Reflection.Metadata.Ecma335.MethodBodyAttributes * bool -> System.Reflection.Metadata.Ecma335.MethodBodyStreamEncoder.MethodBody
Public Function AddMethodBody (codeSize As Integer, Optional maxStack As Integer = 8, Optional exceptionRegionCount As Integer = 0, Optional hasSmallExceptionRegions As Boolean = true, Optional localVariablesSignature As StandaloneSignatureHandle = Nothing, Optional attributes As MethodBodyAttributes = System.Reflection.Metadata.Ecma335.MethodBodyAttributes.InitLocals, Optional hasDynamicStackAllocation As Boolean = false) As MethodBodyStreamEncoder.MethodBody

Parameter

codeSize
Int32

Jumlah byte yang akan dicadangkan untuk instruksi.

maxStack
Int32

Ukuran tumpukan maksimum.

exceptionRegionCount
Int32

Jumlah wilayah pengecualian.

hasSmallExceptionRegions
Boolean

true jika wilayah pengecualian harus dikodekan dalam format kecil; false Sebaliknya.

localVariablesSignature
StandaloneSignatureHandle

Handel tanda tangan variabel lokal.

attributes
MethodBodyAttributes

Atribut isi metode.

hasDynamicStackAllocation
Boolean

true jika metode mengalokasikan dari kumpulan memori lokal dinamis ( localloc instruksi); false jika tidak.

Mengembalikan

Offset isi yang dikodekan dalam aliran isi metode.

Pengecualian

codeSize, exceptionRegionCount, atau maxStack berada di luar rentang yang diizinkan.

Berlaku untuk