MethodBodyStreamEncoder.AddMethodBody Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Aşırı Yüklemeler
AddMethodBody(InstructionEncoder, Int32, StandaloneSignatureHandle, MethodBodyAttributes) |
Bir yöntem gövdesini kodlar ve bunu yöntem gövdesi akışına ekler. |
AddMethodBody(InstructionEncoder, Int32, StandaloneSignatureHandle, MethodBodyAttributes, Boolean) |
Bir yöntem gövdesini kodlar ve sağlanan yönerge kodlayıcısını, en büyük yığın boyutunu, yerel değişkenlerin imza tanıtıcısını, yöntem gövdesi özniteliklerini kullanarak ve yöntemin dinamik yerel bellek havuzundan ayrılıp ayrılmayacağını belirtmeye olanak tanıyarak bunu yöntem gövdesi akışına ekler. |
AddMethodBody(Int32, Int32, Int32, Boolean, StandaloneSignatureHandle, MethodBodyAttributes) |
Bir yöntem gövdesini kodlar ve sağlanan kod boyutunu, en büyük yığın boyutunu, özel durum bölgelerinin sayısını, yerel değişkenlerin imza tanıtıcısını, yöntem gövdesi özniteliklerini kullanarak ve özel durum bölgelerinin küçük biçimde kodlanıp kodlanmayacağını belirtmeye olanak tanıyarak bunu yöntem gövdesi akışına ekler. |
AddMethodBody(Int32, Int32, Int32, Boolean, StandaloneSignatureHandle, MethodBodyAttributes, Boolean) |
Bir yöntem gövdesini kodlar ve sağlanan kod boyutunu, en büyük yığın boyutunu, özel durum bölgelerinin sayısını, yerel değişkenlerin imza tanıtıcısını, yöntem gövdesi özniteliklerini kullanarak, özel durum bölgelerinin küçük biçimde kodlanıp kodlanmaması gerektiğini belirtmeye olanak tanıyarak ve yöntemin dinamik yerel bellek havuzundan ayrılıp ayrılmayacağını belirtmeye olanak tanıyarak bunu yöntem gövdesi akışına ekler. |
AddMethodBody(InstructionEncoder, Int32, StandaloneSignatureHandle, MethodBodyAttributes)
- Kaynak:
- MethodBodyStreamEncoder.cs
- Kaynak:
- MethodBodyStreamEncoder.cs
- Kaynak:
- MethodBodyStreamEncoder.cs
Bir yöntem gövdesini kodlar ve bunu yöntem gövdesi akışına ekler.
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
Parametreler
- instructionEncoder
- InstructionEncoder
Yönerge kodlayıcısı.
- maxStack
- Int32
En büyük yığın boyutu.
- localVariablesSignature
- StandaloneSignatureHandle
Yerel değişkenlerin imza tanıtıcısı.
- attributes
- MethodBodyAttributes
Yöntem gövdesi öznitelikleri.
Döndürülenler
Kodlanmış gövdenin yöntem gövde akışı içindeki uzaklığı.
Özel durumlar
instructionEncoder
varsayılan değere sahiptir.
maxStack
[0, UInt16.MaxValue] aralığının dışında.
Yönerge akışındaki bir dal tarafından hedeflenen etiket işaretlenmedi veya dal yönergesi ile hedef etiket arasındaki uzaklık yönerge işleneninin boyutuna uymuyor.
Şunlara uygulanır
AddMethodBody(InstructionEncoder, Int32, StandaloneSignatureHandle, MethodBodyAttributes, Boolean)
- Kaynak:
- MethodBodyStreamEncoder.cs
- Kaynak:
- MethodBodyStreamEncoder.cs
- Kaynak:
- MethodBodyStreamEncoder.cs
Bir yöntem gövdesini kodlar ve sağlanan yönerge kodlayıcısını, en büyük yığın boyutunu, yerel değişkenlerin imza tanıtıcısını, yöntem gövdesi özniteliklerini kullanarak ve yöntemin dinamik yerel bellek havuzundan ayrılıp ayrılmayacağını belirtmeye olanak tanıyarak bunu yöntem gövdesi akışına ekler.
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
Parametreler
- instructionEncoder
- InstructionEncoder
Yönerge kodlayıcısı.
- maxStack
- Int32
En büyük yığın boyutu.
- localVariablesSignature
- StandaloneSignatureHandle
Yerel değişkenlerin imza tanıtıcısı.
- attributes
- MethodBodyAttributes
Yöntem gövdesi öznitelikleri.
- hasDynamicStackAllocation
- Boolean
true
yöntemi dinamik yerel bellek havuzundan ayrılırsa (IL yönergeyi localloc
içerir); false
aksi takdirde.
Döndürülenler
Kodlanmış gövdenin yöntem gövde akışı içindeki uzaklığı.
Özel durumlar
instructionEncoder
varsayılan değere sahiptir.
maxStack
[0, UInt16.MaxValue] aralığının dışında.
Yönerge akışındaki bir dal tarafından hedeflenen etiket işaretlenmedi veya dal yönergesi ile hedef etiket arasındaki uzaklık yönerge işleneninin boyutuna uymuyor.
Şunlara uygulanır
AddMethodBody(Int32, Int32, Int32, Boolean, StandaloneSignatureHandle, MethodBodyAttributes)
- Kaynak:
- MethodBodyStreamEncoder.cs
- Kaynak:
- MethodBodyStreamEncoder.cs
- Kaynak:
- MethodBodyStreamEncoder.cs
Bir yöntem gövdesini kodlar ve sağlanan kod boyutunu, en büyük yığın boyutunu, özel durum bölgelerinin sayısını, yerel değişkenlerin imza tanıtıcısını, yöntem gövdesi özniteliklerini kullanarak ve özel durum bölgelerinin küçük biçimde kodlanıp kodlanmayacağını belirtmeye olanak tanıyarak bunu yöntem gövdesi akışına ekler.
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
Parametreler
- codeSize
- Int32
Yönergeler için ayrılacak bayt sayısı.
- maxStack
- Int32
En büyük yığın boyutu.
- exceptionRegionCount
- Int32
Özel durum bölgelerinin sayısı.
- hasSmallExceptionRegions
- Boolean
true
özel durum bölgelerinin küçük biçimde kodlanması gerekiyorsa; false
Aksi takdir -de.
- localVariablesSignature
- StandaloneSignatureHandle
Yerel değişkenlerin imza tanıtıcısı.
- attributes
- MethodBodyAttributes
Yöntem gövdesi öznitelikleri.
Döndürülenler
Kodlanmış gövdenin yöntem gövde akışı içindeki uzaklığı.
Özel durumlar
codeSize
, exceptionRegionCount
veya maxStack
izin verilen aralığın dışındadır.
Şunlara uygulanır
AddMethodBody(Int32, Int32, Int32, Boolean, StandaloneSignatureHandle, MethodBodyAttributes, Boolean)
- Kaynak:
- MethodBodyStreamEncoder.cs
- Kaynak:
- MethodBodyStreamEncoder.cs
- Kaynak:
- MethodBodyStreamEncoder.cs
Bir yöntem gövdesini kodlar ve sağlanan kod boyutunu, en büyük yığın boyutunu, özel durum bölgelerinin sayısını, yerel değişkenlerin imza tanıtıcısını, yöntem gövdesi özniteliklerini kullanarak, özel durum bölgelerinin küçük biçimde kodlanıp kodlanmaması gerektiğini belirtmeye olanak tanıyarak ve yöntemin dinamik yerel bellek havuzundan ayrılıp ayrılmayacağını belirtmeye olanak tanıyarak bunu yöntem gövdesi akışına ekler.
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
Parametreler
- codeSize
- Int32
Yönergeler için ayrılacak bayt sayısı.
- maxStack
- Int32
En büyük yığın boyutu.
- exceptionRegionCount
- Int32
Özel durum bölgelerinin sayısı.
- hasSmallExceptionRegions
- Boolean
true
özel durum bölgelerinin küçük biçimde kodlanması gerekiyorsa; false
Aksi takdir -de.
- localVariablesSignature
- StandaloneSignatureHandle
Yerel değişkenlerin imza tanıtıcısı.
- attributes
- MethodBodyAttributes
Yöntem gövdesi öznitelikleri.
- hasDynamicStackAllocation
- Boolean
true
yöntemi dinamik yerel bellek havuzundan ayrılırsa ( localloc
yönerge); false
aksi takdirde.
Döndürülenler
Kodlanmış gövdenin yöntem gövde akışı içindeki uzaklığı.
Özel durumlar
codeSize
, exceptionRegionCount
veya maxStack
izin verilen aralığın dışındadır.