MethodBodyStreamEncoder.AddMethodBody Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přetížení
| AddMethodBody(InstructionEncoder, Int32, StandaloneSignatureHandle, MethodBodyAttributes) |
Zakóduje tělo metody a přidá ho do datového proudu těla metody. |
| AddMethodBody(InstructionEncoder, Int32, StandaloneSignatureHandle, MethodBodyAttributes, Boolean) |
Zakóduje tělo metody a přidá ho do datového proudu těla metody pomocí poskytnutého kodéru instrukce, maximální velikosti zásobníku, popisovače podpisu místních proměnných, atributů těla metody a umožňuje určit, zda má metoda přidělit z dynamického fondu místní paměti nebo ne. |
| AddMethodBody(Int32, Int32, Int32, Boolean, StandaloneSignatureHandle, MethodBodyAttributes) |
Zakóduje tělo metody a přidá ho do streamu těla metody pomocí zadané velikosti kódu, maximální velikosti zásobníku, počtu oblastí výjimek, popisovače podpisu místních proměnných, atributů těla metody a umožňuje určit, zda mají být oblasti výjimek kódovány v malém formátu nebo ne. |
| AddMethodBody(Int32, Int32, Int32, Boolean, StandaloneSignatureHandle, MethodBodyAttributes, Boolean) |
Zakóduje tělo metody a přidá ho do datového proudu těla metody pomocí zadané velikosti kódu, maximální velikosti zásobníku, počtu oblastí výjimek, popisovače místních proměnných, atributů těla metody, což umožňuje určit, zda mají být oblasti výjimek kódovány v malém formátu nebo ne, a umožňuje určit, zda by metoda měla nebo neměla přidělit z dynamického fondu místní paměti. |
AddMethodBody(InstructionEncoder, Int32, StandaloneSignatureHandle, MethodBodyAttributes)
Zakóduje tělo metody a přidá ho do datového proudu těla metody.
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
Parametry
- instructionEncoder
- InstructionEncoder
Instrukční kodér.
- maxStack
- Int32
Maximální velikost zásobníku
- localVariablesSignature
- StandaloneSignatureHandle
Popisovač podpisu místních proměnných
- attributes
- MethodBodyAttributes
Atributy těla metody.
Návraty
Posun zakódovaného těla v rámci streamu těla metody.
Výjimky
instructionEncoder má výchozí hodnotu.
maxStack je mimo rozsah [0, UInt16.MaxValue].
Popisek, na který cílí větev v instrukčním streamu, nebyl označen nebo vzdálenost mezi větev instrukce a cílovým popiskem neodpovídá velikosti operandu instrukce.
Platí pro
AddMethodBody(InstructionEncoder, Int32, StandaloneSignatureHandle, MethodBodyAttributes, Boolean)
Zakóduje tělo metody a přidá ho do datového proudu těla metody pomocí poskytnutého kodéru instrukce, maximální velikosti zásobníku, popisovače podpisu místních proměnných, atributů těla metody a umožňuje určit, zda má metoda přidělit z dynamického fondu místní paměti nebo ne.
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
Parametry
- instructionEncoder
- InstructionEncoder
Instrukční kodér.
- maxStack
- Int32
Maximální velikost zásobníku
- localVariablesSignature
- StandaloneSignatureHandle
Popisovač podpisu místních proměnných
- attributes
- MethodBodyAttributes
Atributy těla metody.
- hasDynamicStackAllocation
- Boolean
true pokud metoda přiděluje z dynamického fondu místní paměti (IL obsahuje localloc instrukce), false jinak.
Návraty
Posun zakódovaného těla v rámci streamu těla metody.
Výjimky
instructionEncoder má výchozí hodnotu.
maxStack je mimo rozsah [0, UInt16.MaxValue].
Popisek, na který cílí větev v instrukčním streamu, nebyl označen nebo vzdálenost mezi větev instrukce a cílovým popiskem neodpovídá velikosti operandu instrukce.
Platí pro
AddMethodBody(Int32, Int32, Int32, Boolean, StandaloneSignatureHandle, MethodBodyAttributes)
Zakóduje tělo metody a přidá ho do streamu těla metody pomocí zadané velikosti kódu, maximální velikosti zásobníku, počtu oblastí výjimek, popisovače podpisu místních proměnných, atributů těla metody a umožňuje určit, zda mají být oblasti výjimek kódovány v malém formátu nebo ne.
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
Parametry
- codeSize
- Int32
Počet bajtů, které mají být rezervovány pro pokyny.
- maxStack
- Int32
Maximální velikost zásobníku
- exceptionRegionCount
- Int32
Počet oblastí výjimek
- hasSmallExceptionRegions
- Boolean
true pokud mají být oblasti výjimek kódovány v malém formátu; false Jinak.
- localVariablesSignature
- StandaloneSignatureHandle
Popisovač podpisu místních proměnných
- attributes
- MethodBodyAttributes
Atributy těla metody.
Návraty
Posun zakódovaného těla v rámci streamu těla metody.
Výjimky
codeSize, exceptionRegionCountnebo maxStack je mimo povolený rozsah.
Platí pro
AddMethodBody(Int32, Int32, Int32, Boolean, StandaloneSignatureHandle, MethodBodyAttributes, Boolean)
Zakóduje tělo metody a přidá ho do datového proudu těla metody pomocí zadané velikosti kódu, maximální velikosti zásobníku, počtu oblastí výjimek, popisovače místních proměnných, atributů těla metody, což umožňuje určit, zda mají být oblasti výjimek kódovány v malém formátu nebo ne, a umožňuje určit, zda by metoda měla nebo neměla přidělit z dynamického fondu místní paměti.
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
Parametry
- codeSize
- Int32
Počet bajtů, které mají být rezervovány pro pokyny.
- maxStack
- Int32
Maximální velikost zásobníku
- exceptionRegionCount
- Int32
Počet oblastí výjimek
- hasSmallExceptionRegions
- Boolean
true pokud mají být oblasti výjimek kódovány v malém formátu; false Jinak.
- localVariablesSignature
- StandaloneSignatureHandle
Popisovač podpisu místních proměnných
- attributes
- MethodBodyAttributes
Atributy těla metody.
- hasDynamicStackAllocation
- Boolean
true pokud metoda přiděluje z dynamického fondu místní paměti ( localloc instrukce), false v opačném případě.
Návraty
Posun zakódovaného těla v rámci streamu těla metody.
Výjimky
codeSize, exceptionRegionCountnebo maxStack je mimo povolený rozsah.