System.Runtime.CompilerServices Espacio de nombres

Proporciona una funcionalidad a los programadores de compiladores que utilizan código administrado para especificar atributos en los metadatos que afectan al comportamiento de Common Language Runtime en tiempo de ejecución.

Clases

AccessedThroughPropertyAttribute

Especifica el nombre de la propiedad que accede al campo con atributos.

AsyncIteratorStateMachineAttribute

Indica si un método es un iterador asincrónico.

AsyncMethodBuilderAttribute

Indica el tipo del generador de método asincrónico que se debe usar mediante un compilador de lenguaje para generar el tipo con atributos cuando se usa como el tipo de valor devuelto de un método asincrónico.

AsyncStateMachineAttribute

Indica si un método está marcado con el modificador Async o el modificador async.

CallConvCdecl

Indica que un método debe utilizar la convención de llamada Cdecl.

CallConvFastcall

Esta versión de .NET no admite esta convención de llamada.

CallConvMemberFunction

Indica que la convención de llamada utilizada es la variante de función miembro.

CallConvStdcall

Indica que un método debe utilizar la convención de llamada StdCall.

CallConvSuppressGCTransition

Indica que un método debe suprimir la transición de GC como parte de la convención de llamada.

CallConvSwift

Proporciona una funcionalidad a los programadores de compiladores que utilizan código administrado para especificar atributos en los metadatos que afectan al comportamiento de Common Language Runtime en tiempo de ejecución.

CallConvThiscall

Indica que un método debe utilizar la convención de llamada ThisCall.

CallerArgumentExpressionAttribute

Indica que un parámetro captura la expresión pasada para otro parámetro como una cadena.

CallerFilePathAttribute

Permite obtener la ruta de acceso completa del archivo de origen que contiene el llamador. Se trata de la ruta de acceso del archivo en el momento de la compilación.

CallerLineNumberAttribute

Permite obtener el número de línea en el archivo de origen en el que se llama al método.

CallerMemberNameAttribute

Permite obtener el nombre de método o propiedad del llamador al método.

CallSite

Clase base de un sitio de llamada dinámico. Este tipo se usa como un tipo de parámetro para los destinos de sitio dinámico.

CallSite<T>

Tipo de sitio dinámico.

CallSiteBinder

Clase responsable del enlace en tiempo de ejecución de las operaciones dinámicas en el sitio de llamada dinámico.

CallSiteHelpers

Clase que contiene métodos del asistente para sitios de llamada DLR.

CallSiteOps

Crea y almacena en memoria caché reglas de enlace.

Closure

Representa el estado en tiempo de ejecución de un método generado dinámicamente.

CollectionBuilderAttribute

Proporciona una funcionalidad a los programadores de compiladores que utilizan código administrado para especificar atributos en los metadatos que afectan al comportamiento de Common Language Runtime en tiempo de ejecución.

CompilationRelaxationsAttribute

Controla la rigurosidad del código generado por el compilador Just-In-Time (JIT) de Common Language Runtime.

CompilerFeatureRequiredAttribute

Indica que la compatibilidad del compilador con una característica determinada es necesaria para la ubicación donde se aplica este atributo.

CompilerGeneratedAttribute

Distingue un elemento generado por el compilador de un elemento generado por el usuario. Esta clase no puede heredarse.

CompilerGlobalScopeAttribute

Indica que una clase debería tratarse como si tuviera ámbito global.

CompilerMarshalOverride

Indica que la instancia modificada de una variable difiere de su tipo auténtico al calcular las referencias. Esta clase no puede heredarse.

ConditionalWeakTable<TKey,TValue>

Permite a los compiladores adjuntar dinámicamente campos de objeto a objetos administrados.

ContractHelper

Proporciona métodos que usa el sistema de reescritura binario para administrar errores de contrato.

CppInlineNamespaceAttribute

Define el espacio de nombres insertado en C++/CLI.

CreateNewOnMetadataUpdateAttribute

Indica que se debe reemplazar un tipo en lugar de actualizarse al aplicar actualizaciones de metadatos.

CustomConstantAttribute

Define un valor constante que un compilador puede hacer persistir para un parámetro de método o campo.

DateTimeConstantAttribute

Hace persistir una constante DateTime de 8 bytes para un campo o parámetro.

DebugInfoGenerator

Genera información de depuración para expresiones lambda en un árbol de expresión.

DecimalConstantAttribute

Almacena el valor de una constante Decimal en los metadatos. Esta clase no puede heredarse.

DefaultDependencyAttribute

Proporciona una sugerencia a Common Language Runtime (CLR) que indica qué posibilidades existen de que se cargue una dependencia. Esta clase se utiliza en un ensamblado dependiente para indicar qué sugerencia se debería utilizar cuando el elemento primario no especifica el atributo DependencyAttribute. Esta clase no puede heredarse.

DependencyAttribute

Indica cuándo se cargará la dependencia a la que hace referencia el ensamblado. Esta clase no puede heredarse.

DisablePrivateReflectionAttribute

Indica que cualquier miembro privado en los tipos de un ensamblado no está disponible para su reflexión.

DisableRuntimeMarshallingAttribute

Deshabilita el subsistema de serialización administrada o no administrada en tiempo de ejecución integrado para las invocaciones de punteros de función P/Invokes, Delegate types y unmanaged function.

DiscardableAttribute

Marca una definición de tipo como descartable.

DynamicAttribute

Indica que el uso de Object en un miembro significa que se tratará como un tipo enviado dinámicamente.

EnumeratorCancellationAttribute

Permite a los usuarios de métodos enumerables asincrónicos marcar el parámetro que debe recibir el valor del token de cancelación de GetAsyncEnumerator(CancellationToken).

ExecutionScope

Representa el estado en tiempo de ejecución de un método generado dinámicamente.

ExtensionAttribute

Indica que un método es un método de extensión, o que una clase o un ensamblado contiene los métodos de extensión.

FixedAddressValueTypeAttribute

Fija la dirección de un campo de tipo de valor estático a lo largo de su período de duración. Esta clase no puede heredarse.

FixedBufferAttribute

Indica que un campo se debe tratar como contenedor de un número fijo de elementos del tipo primitivo especificado. Esta clase no puede heredarse.

FormattableStringFactory

Proporciona un método estático para crear un objeto FormattableString a partir de una cadena de formato compuesto y sus argumentos.

HasCopySemanticsAttribute

Esta clase está obsoleta. Esta clase no puede heredarse.

IDispatchConstantAttribute

Indica que el valor predeterminado para el parámetro o campo con atributos es una instancia de DispatchWrapper, donde WrappedObject es null.

IndexerNameAttribute

Indica el nombre por el que se conoce un indizador en lenguajes de programación que no son compatibles directamente con indizadores.

InlineArrayAttribute

Indica que el almacenamiento de la instancia se replica Length secuencialmente.

InternalsVisibleToAttribute

Especifica que los tipos que normalmente solo son visibles en el ensamblado actual también se pueden ver en un ensamblado especificado.

InterpolatedStringHandlerArgumentAttribute

Indica qué argumentos de un método que implica un controlador de cadenas interpolado se deben pasar a ese controlador.

InterpolatedStringHandlerAttribute

Indica que el tipo con atributos se va a usar como controlador de cadenas interpoladas.

IsBoxed

Indica que el tipo de referencia modificado es un tipo de valor al que se le ha aplicado la conversión boxing. Esta clase no puede heredarse.

IsByRefLikeAttribute

Indica que una estructura es similar a byref.

IsByValue

Indica que un argumento de método modificado se debería interpretar como si tuviera semántica de objeto pasado por valor. Este modificador se aplica para hacer referencia a los tipos. Esta clase no puede heredarse.

IsConst

Indica que el tipo modificado tiene un modificador const. Esta clase no puede heredarse.

IsCopyConstructed

Indica que al copiar valores de este tipo se debe utilizar el constructor de copias que proporciona el tipo. Esta clase no puede heredarse.

IsExplicitlyDereferenced

Indica que un puntero administrado representa un parámetro de puntero dentro de una firma de método. Esta clase no puede heredarse.

IsExternalInit

Reservada para su uso por parte del compilador para realizar el seguimiento de los metadatos. Los desarrolladores no deben usar esta clase en el código fuente.

IsImplicitlyDereferenced

Indica que la referencia de la recolección de elementos no utilizados modificada representa un parámetro de referencia dentro de una firma de método. Esta clase no puede heredarse.

IsJitIntrinsic

Indica que un método modificado es un valor intrínseco para el que el compilador Just-In-Time (JIT) puede realizar una generación de código especial. Esta clase no puede heredarse.

IsLong

Indica que un entero modificado es un valor long de C++ estándar. Esta clase no puede heredarse.

IsPinned

Indica que una instancia modificada se ancla en memoria. Esta clase no puede heredarse.

IsReadOnlyAttribute

Marca un elemento de programa como de solo lectura.

IsSignUnspecifiedByte

Indica que un modificador funciona con signo y sin signo. Esta clase no puede heredarse.

IsUdtReturn

Indica que un tipo de valor devuelto es un tipo definido por el usuario. Esta clase no puede heredarse.

IsUnmanagedAttribute

Reservado para su uso por un compilador para realizar el seguimiento de metadatos. Los desarrolladores no deben usar este atributo en el código fuente.

IsVolatile

Marca un campo como volátil. Esta clase no puede heredarse.

IteratorStateMachineAttribute

Indica si un método de Visual Basic se marca con el modificador Iterator.

IUnknownConstantAttribute

Indica que el valor predeterminado para el parámetro o campo con atributos es una instancia de UnknownWrapper, donde WrappedObject es null. Esta clase no puede heredarse.

MetadataUpdateOriginalTypeAttribute

Emitido por el compilador cuando se actualiza un tipo marcado con CreateNewOnMetadataUpdateAttribute durante una sesión de recarga activa.

MethodImplAttribute

Especifica los detalles de cómo se implementa un método. Esta clase no puede heredarse.

ModuleInitializerAttribute

Se usa para indicar al compilador que se debe llamar a un método en el inicializador del módulo contenedor.

NativeCppClassAttribute

Aplica los metadatos a un ensamblado que indica que un tipo es no administrado. Esta clase no puede heredarse.

NullableAttribute

Reservado para su uso por un compilador para realizar el seguimiento de metadatos. Los desarrolladores no deben usar este atributo en el código fuente.

NullableContextAttribute

Reservado para su uso por un compilador para realizar el seguimiento de metadatos. Los desarrolladores no deben usar este atributo en el código fuente.

NullablePublicOnlyAttribute

Reservado para su uso por un compilador para realizar el seguimiento de metadatos. Los desarrolladores no deben usar este atributo en el código fuente.

PreserveBaseOverridesAttribute

Garantiza que cualquier llamada virtual al método, tanto si se usa la firma base como la firma derivada del método, ejecuta la invalidación más derivada.

ReadOnlyCollectionBuilder<T>

Generador para la colección de solo lectura.

ReferenceAssemblyAttribute

Identifica un ensamblado como ensamblado de referencia, que contiene metadatos pero no contiene un código ejecutable.

RefSafetyRulesAttribute

Indica la versión de idioma de las reglas de seguridad de referencia usadas cuando se compiló el módulo.

RequiredAttributeAttribute

Especifica que un compilador de importación debe comprender totalmente la semántica de una definición de tipos, o denegar su uso. Esta clase no puede heredarse.

RequiredMemberAttribute

Especifica que un tipo tiene miembros necesarios o que se requiere un miembro.

RequiresLocationAttribute

Reservado para su uso por un compilador para realizar el seguimiento de metadatos. Los desarrolladores no deben usar este atributo en el código fuente.

RuleCache<T>

Representa una memoria caché de reglas de enlace en tiempo de ejecución.

RuntimeCompatibilityAttribute

Especifica si las excepciones que no derivan de la clase Exception se ajustan con un objeto RuntimeWrappedException. Esta clase no puede heredarse.

RuntimeFeature

Define las API para determinar si Common Language Runtime admite características específicas.

RuntimeHelpers

Proporciona un conjunto de propiedades y métodos estáticos que proporcionan funcionalidad para los compiladores. Esta clase no puede heredarse.

RuntimeOps

Contiene métodos del asistente a los que se llama desde métodos generados dinámicamente.

RuntimeWrappedException

Ajusta una excepción que no deriva de la clase Exception. Esta clase no puede heredarse.

ScopedRefAttribute

Reservado para su uso por un compilador para realizar el seguimiento de metadatos. Los desarrolladores no deben usar este atributo en el código fuente.

ScopelessEnumAttribute

Indica que una enumeración nativa no está calificada con el nombre de tipo de enumeración. Esta clase no puede heredarse.

SkipLocalsInitAttribute

Indica al compilador que la marca de inicialización .locals no se debe establecer en encabezados de método anidados al emitir a metadatos.

SpecialNameAttribute

Indica que el motor en tiempo de ejecución o las herramientas tratan de una manera especial a un tipo o miembro. Esta clase no puede heredarse.

StateMachineAttribute

Permite determinar si un método es un método de equipo de estado.

StringFreezingAttribute

Desusado. Inmoviliza un literal de cadena al crear imágenes nativas mediante Ngen.exe (Generador de imágenes nativo). Esta clase no puede heredarse.

StrongBox<T>

Contiene una referencia a un valor.

SuppressIldasmAttribute

Impide que Ildasm.exe (Desensamblador de IL) se desensamble de un ensamblado. Esta clase no puede heredarse.

SwitchExpressionException

Indica que una expresión switch no exhaustiva no pudo comparar su entrada en el tiempo de ejecución. La excepción contiene opcionalmente un objeto que representa el valor no comparado.

TupleElementNamesAttribute

Indica que el uso de una tupla de valor de un miembro está destinado a tratarse como una tupla con nombres de elemento.

TypeForwardedFromAttribute

Especifica una clase Type de origen en otro ensamblado.

TypeForwardedToAttribute

Especifica un destino Type en otro ensamblado.

Unsafe

Contiene funcionalidad genérica de bajo nivel para manipular punteros administrados y no administrados.

UnsafeAccessorAttribute

Proporciona acceso a un miembro inaccesible de un tipo específico.

UnsafeValueTypeAttribute

Especifica que un tipo contiene una matriz no administrada que podría provocar un desbordamiento. Esta clase no puede heredarse.

Estructuras

AsyncIteratorMethodBuilder

Representa un generador para los iteradores asincrónicos.

AsyncTaskMethodBuilder

Representa un generador para los métodos asincrónicos que devuelven una tarea.

AsyncTaskMethodBuilder<TResult>

Representa un generador de métodos asincrónicos que devuelve una tarea y proporciona un parámetro para el resultado.

AsyncValueTaskMethodBuilder

Representa un generador para los métodos asincrónicos que devuelven un elemento ValueTask.

AsyncValueTaskMethodBuilder<TResult>

Representa un generador para los métodos asincrónicos que devuelven una ValueTask<TResult>.

AsyncVoidMethodBuilder

Representa un generador para los métodos asincrónicos que no devuelven un valor.

ConfiguredAsyncDisposable

Proporciona un tipo que se puede usar para configurar la forma en la que se realizan los objetos await en un elemento IAsyncDisposable.

ConfiguredCancelableAsyncEnumerable<T>.Enumerator

Proporciona un enumerador asincrónico que admite await y que permite una iteración que se puede cancelar, así como elementos await configurados.

ConfiguredCancelableAsyncEnumerable<T>

Proporciona un elemento enumerable asincrónico que admite await y que permite una iteración que se puede cancelar, así como elementos await configurados.

ConfiguredTaskAwaitable

Proporciona un objeto que admite await que permite configurar objetos await en una tarea.

ConfiguredTaskAwaitable.ConfiguredTaskAwaiter

Proporciona un objeto que ejecuta await para un objeto (ConfiguredTaskAwaitable) que admite await.

ConfiguredTaskAwaitable<TResult>.ConfiguredTaskAwaiter

Proporciona un objeto que ejecuta await para un objeto que admite await (ConfiguredTaskAwaitable<TResult>).

ConfiguredTaskAwaitable<TResult>

Proporciona un objeto que admite await que permite configurar objetos await en una tarea.

ConfiguredValueTaskAwaitable

Proporciona un tipo que admite await que permite configurar objetos await en un elemento ValueTask.

ConfiguredValueTaskAwaitable.ConfiguredValueTaskAwaiter

Proporciona un elemento awaiter para ConfiguredValueTaskAwaitable.

ConfiguredValueTaskAwaitable<TResult>.ConfiguredValueTaskAwaiter

Proporciona un elemento awaiter para ConfiguredValueTaskAwaitable<TResult>.

ConfiguredValueTaskAwaitable<TResult>

Proporciona un tipo que admite await que permite configurar objetos await en un elemento ValueTask<TResult>.

DefaultInterpolatedStringHandler

Proporciona un controlador utilizado por el compilador de lenguaje para procesar cadenas interpoladas en String instancias.

PoolingAsyncValueTaskMethodBuilder

Representa un generador para los métodos asincrónicos que devuelven un elemento ValueTask.

PoolingAsyncValueTaskMethodBuilder<TResult>

Representa un generador para los métodos asincrónicos que devuelven una ValueTask<TResult>.

TaskAwaiter

Proporciona un objeto que espera la finalización de una tarea asincrónica.

TaskAwaiter<TResult>

Representa un objeto que espera la finalización de una tarea asincrónica y que proporciona un parámetro para el resultado.

ValueTaskAwaiter

Proporciona un elemento awaiter para ValueTask.

ValueTaskAwaiter<TResult>

Proporciona un elemento awaiter para ValueTask<TResult>.

YieldAwaitable

Proporciona el contexto para esperar la conmutación asincrónica en un entorno de destino.

YieldAwaitable.YieldAwaiter

Proporciona un elemento que ejecuta await para el cambio a un entorno de destino.

Interfaces

IAsyncStateMachine

Representa las máquinas de estado que se generan para los métodos asincrónicos. Este tipo solo es para uso del compilador.

ICriticalNotifyCompletion

Representa un elemento que ejecuta await y que programa continuaciones cuando finaliza una operación await.

INotifyCompletion

Representa una operación que programa continuaciones cuando finaliza.

IRuntimeVariables

Representa los valores de variables en tiempo de ejecución.

IStrongBox

Define una propiedad para tener acceso al valor al que hace referencia un objeto.

ITuple

Define una implementación de tupla de uso general que le permite obtener acceso a los miembros de instancia de tupla sin conocer el tipo subyacente de la tupla.

Enumeraciones

CompilationRelaxations

Especifica los parámetros que controlan la rigurosidad del código generado por el compilador Just-in-time (JIT) de Common Language Runtime.

LoadHint

Especifica el enlace predeterminado preferido para un ensamblado dependiente.

MethodCodeType

Define el modo de implementar un método.

MethodImplOptions

Especifica constantes que definen los detalles de cómo se implementa un método.

UnsafeAccessorKind

Especifica el tipo de destino al que proporciona acceso .UnsafeAccessorAttribute

Delegados

ConditionalWeakTable<TKey,TValue>.CreateValueCallback

Representa un método que crea un valor no predeterminado para agregar como parte de un par clave-valor a un objeto ConditionalWeakTable<TKey,TValue>.

RuntimeHelpers.CleanupCode

Representa un método para ejecutar cuando se produce una excepción.

RuntimeHelpers.TryCode

Representa un delegado para el código que tiene que ejecutarse en un bloque try.

Comentarios

Este espacio de nombres es principalmente para los escritores de compiladores, aunque varias de sus clases, como InternalsVisibleToAttribute, se usan en una amplia variedad de aplicaciones.