Partager via


System.Reflection.Emit Espace de noms

Contient des classes qui permettent à un compilateur ou à un outil d’émettre des métadonnées et du langage MSIL (Microsoft Intermediate Language) et de générer éventuellement un fichier PE sur le disque. Les principaux clients de ces classes sont des moteurs de script et des compilateurs.

Classes

AssemblyBuilder

Définit et représente un assembly dynamique.

ConstructorBuilder

Définit et représente un constructeur d’une classe dynamique.

CustomAttributeBuilder

Aide à générer des attributs personnalisés.

DynamicILInfo

Fournit la prise en charge des autres façons de générer le langage MSIL (Microsoft Intermediate Language) et les métadonnées d’une méthode dynamique, notamment des méthodes de création de jetons et d’insertion du code, de la gestion des exceptions et des objets blob de signature de variable locale.

DynamicMethod

Définit et représente une méthode dynamique qui peut être compilée, exécutée et ignorée. Les méthodes ignorées sont disponibles pour le garbage collection.

EnumBuilder

Décrit et représente un type d’énumération.

EventBuilder

Définit des événements pour une classe.

FieldBuilder

Définit et représente un champ. Cette classe ne peut pas être héritée.

GenericTypeParameterBuilder

Définit et crée des paramètres de type générique pour les types et méthodes génériques définis dynamiquement. Cette classe ne peut pas être héritée.

ILGenerator

Génère des instructions MSIL (Microsoft Intermediate Language).

LocalBuilder

Représente une variable locale au sein d’une méthode ou d’un constructeur.

MethodBuilder

Définit et représente une méthode (ou constructeur) sur une classe dynamique.

MethodRental

Fournit un moyen rapide d’échanger l’implémentation du corps de la méthode en fonction d’une méthode d’une classe.

ModuleBuilder

Définit et représente un module dans un assembly dynamique.

OpCodes

Fournit des représentations de champ des instructions MSIL (Microsoft Intermediate Language) pour l’émission par les membres de classe ILGenerator (tels que Emit(OpCode)).

ParameterBuilder

Crée ou associe des informations de paramètre.

PersistedAssemblyBuilder

Fournit une implémentation AssemblyBuilder qui peut conserver l’assembly sur un disque ou un flux.

PropertyBuilder

Définit les propriétés d’un type.

SignatureHelper

Fournit des méthodes pour créer des signatures.

TypeBuilder

Définit et crée de nouvelles instances de classes pendant l’exécution.

UnmanagedMarshal

Représente la classe qui décrit comment marshaler un champ d’un code managé vers du code non managé. Cette classe ne peut pas être héritée.

Structures

EventToken

Représente la Token retournée par les métadonnées pour représenter un événement.

ExceptionHandler

Représente un gestionnaire d’exceptions dans un tableau d’octets d’il à passer à une méthode telle que SetMethodBody(Byte[], Int32, Byte[], IEnumerable<ExceptionHandler>, IEnumerable<Int32>).

FieldToken

Le struct FieldToken est une représentation d’objet d’un jeton qui représente un champ.

Label

Représente une étiquette dans le flux d’instructions. Label est utilisé conjointement avec la classe ILGenerator.

MethodToken

Le struct MethodToken est une représentation d’objet d’un jeton qui représente une méthode.

OpCode

Décrit une instruction de langage intermédiaire (IL).

ParameterToken

Le struct ParameterToken est une représentation opaque du jeton retourné par les métadonnées pour représenter un paramètre.

PropertyToken

Le struct PropertyToken est une représentation opaque du Token retourné par les métadonnées pour représenter une propriété.

SignatureToken

Représente la Token retournée par les métadonnées pour représenter une signature.

StringToken

Représente un jeton qui représente une chaîne.

TypeToken

Représente la Token retournée par les métadonnées pour représenter un type.

Énumérations

AssemblyBuilderAccess

Définit les modes d’accès d’un assembly dynamique.

FlowControl

Décrit comment une instruction modifie le flux de contrôle.

OpCodeType

Décrit les types d’instructions MSIL (Microsoft Intermediate Language).

OperandType

Décrit le type d’opérande de l’instruction MSIL (Microsoft Intermediate Language).

PackingSize

Spécifie l’un des deux facteurs qui déterminent l’alignement de la mémoire des champs lorsqu’un type est marshalé.

PEFileKinds

Spécifie le type du fichier exécutable portable (PE).

StackBehaviour

Décrit comment les valeurs sont envoyées (push) sur une pile ou décollé d’une pile.