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
, exceptionRegionCount
nebo 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
, exceptionRegionCount
nebo maxStack
je mimo povolený rozsah.