Compartilhar via


MethodBodyStreamEncoder.AddMethodBody Método

Definição

Sobrecargas

AddMethodBody(InstructionEncoder, Int32, StandaloneSignatureHandle, MethodBodyAttributes)

Codifica um corpo do método e o adiciona ao fluxo do corpo do método.

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

Codifica um corpo do método e o adiciona ao fluxo do corpo do método usando o codificador de instruções fornecido, o tamanho máximo da pilha, o identificador de assinatura das variáveis locais, os atributos do corpo do método e permite indicar se o método deve ser alocado ou não a partir do pool de memória local dinâmico.

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

Codifica um corpo do método e o adiciona ao fluxo do corpo do método usando o tamanho de código fornecido, o tamanho máximo da pilha, o número de regiões de exceção, o identificador de assinatura das variáveis locais e os atributos do corpo do método e permite indicar se as regiões de exceção devem ser codificadas em formato pequeno ou não.

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

Codifica um corpo do método e o adiciona ao fluxo do corpo do método usando o tamanho de código fornecido, o tamanho máximo da pilha, o número de regiões de exceção, o identificador de assinatura das variáveis locais e os atributos do corpo do método, permite indicar se as regiões de exceção devem ser codificadas em formato pequeno ou não e permite indicar se o método deve ser alocado a partir do pool de memória local dinâmico.

AddMethodBody(InstructionEncoder, Int32, StandaloneSignatureHandle, MethodBodyAttributes)

Origem:
MethodBodyStreamEncoder.cs
Origem:
MethodBodyStreamEncoder.cs
Origem:
MethodBodyStreamEncoder.cs

Codifica um corpo do método e o adiciona ao fluxo do corpo do método.

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

Parâmetros

instructionEncoder
InstructionEncoder

O codificador de instruções.

maxStack
Int32

O tamanho máximo da pilha.

localVariablesSignature
StandaloneSignatureHandle

O identificador de assinatura de variáveis locais.

attributes
MethodBodyAttributes

Os atributos do corpo do método.

Retornos

O deslocamento do corpo codificado dentro do fluxo do corpo do método.

Exceções

instructionEncoder tem valor padrão.

maxStack está fora do intervalo [0, UInt16.MaxValue].

Um rótulo almejado por um branch no fluxo de instrução não foi marcado ou a distância entre uma instrução de branch e o rótulo de destino não se ajusta ao tamanho do operando de instrução.

Aplica-se a

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

Origem:
MethodBodyStreamEncoder.cs
Origem:
MethodBodyStreamEncoder.cs
Origem:
MethodBodyStreamEncoder.cs

Codifica um corpo do método e o adiciona ao fluxo do corpo do método usando o codificador de instruções fornecido, o tamanho máximo da pilha, o identificador de assinatura das variáveis locais, os atributos do corpo do método e permite indicar se o método deve ser alocado ou não a partir do pool de memória local dinâmico.

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

Parâmetros

instructionEncoder
InstructionEncoder

O codificador de instruções.

maxStack
Int32

O tamanho máximo da pilha.

localVariablesSignature
StandaloneSignatureHandle

O identificador de assinatura de variáveis locais.

attributes
MethodBodyAttributes

Os atributos do corpo do método.

hasDynamicStackAllocation
Boolean

true se o método for alocado a partir do pool de memória local dinâmico (o IL contém a instrução localloc); caso contrário, false.

Retornos

O deslocamento do corpo codificado dentro do fluxo do corpo do método.

Exceções

instructionEncoder tem valor padrão.

maxStack está fora do intervalo [0, UInt16.MaxValue].

Um rótulo almejado por um branch no fluxo de instrução não foi marcado ou a distância entre uma instrução de branch e o rótulo de destino não se ajusta ao tamanho do operando de instrução.

Aplica-se a

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

Origem:
MethodBodyStreamEncoder.cs
Origem:
MethodBodyStreamEncoder.cs
Origem:
MethodBodyStreamEncoder.cs

Codifica um corpo do método e o adiciona ao fluxo do corpo do método usando o tamanho de código fornecido, o tamanho máximo da pilha, o número de regiões de exceção, o identificador de assinatura das variáveis locais e os atributos do corpo do método e permite indicar se as regiões de exceção devem ser codificadas em formato pequeno ou não.

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

Parâmetros

codeSize
Int32

O número de bytes que serão reservados para instruções.

maxStack
Int32

O tamanho máximo da pilha.

exceptionRegionCount
Int32

O número de regiões de exceção.

hasSmallExceptionRegions
Boolean

true se as regiões de exceção devem ser codificadas em formato pequeno; caso contrário, false.

localVariablesSignature
StandaloneSignatureHandle

O identificador de assinatura de variáveis locais.

attributes
MethodBodyAttributes

Os atributos do corpo do método.

Retornos

O deslocamento do corpo codificado dentro do fluxo do corpo do método.

Exceções

codeSize, exceptionRegionCountou maxStack está fora do intervalo permitido.

Aplica-se a

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

Origem:
MethodBodyStreamEncoder.cs
Origem:
MethodBodyStreamEncoder.cs
Origem:
MethodBodyStreamEncoder.cs

Codifica um corpo do método e o adiciona ao fluxo do corpo do método usando o tamanho de código fornecido, o tamanho máximo da pilha, o número de regiões de exceção, o identificador de assinatura das variáveis locais e os atributos do corpo do método, permite indicar se as regiões de exceção devem ser codificadas em formato pequeno ou não e permite indicar se o método deve ser alocado a partir do pool de memória local dinâmico.

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

Parâmetros

codeSize
Int32

O número de bytes que serão reservados para instruções.

maxStack
Int32

O tamanho máximo da pilha.

exceptionRegionCount
Int32

O número de regiões de exceção.

hasSmallExceptionRegions
Boolean

true se as regiões de exceção devem ser codificadas em formato pequeno; caso contrário, false.

localVariablesSignature
StandaloneSignatureHandle

O identificador de assinatura de variáveis locais.

attributes
MethodBodyAttributes

Os atributos do corpo do método.

hasDynamicStackAllocation
Boolean

true se o método for alocar a partir do pool de memória local dinâmico (a instrução localloc); caso contrário, false.

Retornos

O deslocamento do corpo codificado dentro do fluxo do corpo do método.

Exceções

codeSize, exceptionRegionCountou maxStack está fora do intervalo permitido.

Aplica-se a