Compartilhar via


System.Reflection.Emit Namespace

Contém classes que permitem que um compilador ou ferramenta emita metadados e MSIL (linguagem intermediária da Microsoft) e, opcionalmente, gere um arquivo PE no disco. Os principais clientes dessas classes são mecanismos de script e compiladores.

Classes

AssemblyBuilder

Define e representa um assembly dinâmico.

ConstructorBuilder

Define e representa um construtor de uma classe dinâmica.

CustomAttributeBuilder

Ajuda a criar atributos personalizados.

DynamicILInfo

Fornece suporte para maneiras alternativas de gerar a MSIL (linguagem intermediária da Microsoft) e metadados para um método dinâmico, incluindo métodos para criar tokens e para inserir o código, tratamento de exceções e blobs de assinatura de variável local.

DynamicMethod

Define e representa um método dinâmico que pode ser compilado, executado e descartado. Os métodos descartados estão disponíveis para coleta de lixo.

EnumBuilder

Descreve e representa um tipo de enumeração.

EventBuilder

Define eventos para uma classe.

FieldBuilder

Define e representa um campo. Essa classe não pode ser herdada.

GenericTypeParameterBuilder

Define e cria parâmetros de tipo genérico para tipos e métodos genéricos definidos dinamicamente. Essa classe não pode ser herdada.

ILGenerator

Gera instruções de MSIL (linguagem intermediária) da Microsoft.

LocalBuilder

Representa uma variável local em um método ou construtor.

MethodBuilder

Define e representa um método (ou construtor) em uma classe dinâmica.

MethodRental

Fornece uma maneira rápida de trocar a implementação do corpo do método dado um método de uma classe.

ModuleBuilder

Define e representa um módulo em um assembly dinâmico.

OpCodes

Fornece representações de campo das instruções da MSIL (Linguagem Intermediária da Microsoft) para emissão pelos membros da classe ILGenerator (como Emit(OpCode)).

ParameterBuilder

Cria ou associa informações de parâmetro.

PersistedAssemblyBuilder

Fornece uma implementação assemblyBuilder que pode persistir o assembly em um disco ou fluxo.

PropertyBuilder

Define as propriedades de um tipo.

SignatureHelper

Fornece métodos para a criação de assinaturas.

TypeBuilder

Define e cria novas instâncias de classes durante o tempo de execução.

UnmanagedMarshal

Representa a classe que descreve como fazer marshaling de um campo de código gerenciado para não gerenciado. Essa classe não pode ser herdada.

Estruturas

EventToken

Representa o Token retornado pelos metadados para representar um evento.

ExceptionHandler

Representa um manipulador de exceção em uma matriz de bytes de IL a ser passada para um método como SetMethodBody(Byte[], Int32, Byte[], IEnumerable<ExceptionHandler>, IEnumerable<Int32>).

FieldToken

O struct FieldToken é uma representação de objeto de um token que representa um campo.

Label

Representa um rótulo no fluxo de instruções. Label é usado em conjunto com a classe ILGenerator.

MethodToken

O struct MethodToken é uma representação de objeto de um token que representa um método.

OpCode

Descreve uma instrução IL (linguagem intermediária).

ParameterToken

O struct ParameterToken é uma representação opaca do token retornado pelos metadados para representar um parâmetro.

PropertyToken

O struct PropertyToken é uma representação opaca da Token retornada pelos metadados para representar uma propriedade.

SignatureToken

Representa o Token retornado pelos metadados para representar uma assinatura.

StringToken

Representa um token que representa uma cadeia de caracteres.

TypeToken

Representa o Token retornado pelos metadados para representar um tipo.

Enumerações

AssemblyBuilderAccess

Define os modos de acesso para um assembly dinâmico.

FlowControl

Descreve como uma instrução altera o fluxo de controle.

OpCodeType

Descreve os tipos de instruções msil (linguagem intermediária) da Microsoft.

OperandType

Descreve o tipo de operando da instrução MSIL (linguagem intermediária) da Microsoft.

PackingSize

Especifica um dos dois fatores que determinam o alinhamento de memória dos campos quando um tipo é empacotado.

PEFileKinds

Especifica o tipo do arquivo PE (executável portátil).

StackBehaviour

Descreve como os valores são enviados por push para uma pilha ou retirados de uma pilha.