System.Runtime.CompilerServices 命名空间

为使用托管代码指定影响公共语言运行时运行时行为的元数据中的属性的编译器编写器提供功能。

AccessedThroughPropertyAttribute

指定访问特性化字段的属性的名称。

AsyncIteratorStateMachineAttribute

指示方法是否为异步迭代器。

AsyncMethodBuilderAttribute

指示语言编译器应在用作异步方法的返回类型时生成特性化类型的异步方法生成器的类型。

AsyncStateMachineAttribute

指示方法是使用 Async 还是 异步 修饰符进行标记。

CallConvCdecl

指示方法应使用 Cdecl 调用约定。

CallConvFastcall

此版本的 .NET 不支持此调用约定。

CallConvMemberFunction

指示使用的调用约定是成员函数变体。

CallConvStdcall

指示方法应使用 StdCall 调用约定。

CallConvSuppressGCTransition

指示方法应禁止 GC 转换作为调用约定的一部分。

CallConvSwift

指示方法应使用 Swift 调用约定。

CallConvThiscall

指示方法应使用 ThisCall 调用约定。

CallerArgumentExpressionAttribute

指示参数将捕获为另一个参数作为字符串传递的表达式。

CallerFilePathAttribute

允许获取包含调用方的源文件的完整路径。 这是编译时的文件路径。

CallerLineNumberAttribute

允许在调用该方法的源文件中获取行号。

CallerMemberNameAttribute

允许获取方法调用方的方法或属性名称。

CallSite

动态调用站点基类。 此类型用作动态站点目标的参数类型。

CallSite<T>

动态网站类型。

CallSiteBinder

负责对动态调用站点上的动态操作进行运行时绑定的类。

CallSiteHelpers

包含 DLR CallSites 帮助程序方法的类。

CallSiteOps

创建和缓存绑定规则。

Closure

表示动态生成的方法的运行时状态。

CollectionBuilderAttribute

为使用托管代码指定影响公共语言运行时运行时行为的元数据中的属性的编译器编写器提供功能。

CompilationRelaxationsAttribute

控制公共语言运行时实时 (JIT) 编译器生成的代码的严格性。

CompilerFeatureRequiredAttribute

指示应用此属性的位置需要编译器对特定功能的支持。

CompilerGeneratedAttribute

将编译器生成的元素与用户生成的元素区分开来。 无法继承此类。

CompilerGlobalScopeAttribute

指示类应被视为具有全局范围。

CompilerMarshalOverride

指示变量的修改实例在封送处理时不同于其真实类型。 无法继承此类。

ConditionalWeakTable<TKey,TValue>

使编译器能够动态将对象字段附加到托管对象。

ContractHelper

提供二进制重写器用于处理协定失败的方法。

CppInlineNamespaceAttribute

在 C++/CLI 中定义内联命名空间。

CreateNewOnMetadataUpdateAttribute

指示应用元数据更新时应替换类型,而不是更新类型。

CustomConstantAttribute

定义编译器可为字段或方法参数保留的常量值。

DateTimeConstantAttribute

保留字段或参数的 8 字节 DateTime 常量。

DebugInfoGenerator

为表达式树中的 lambda 表达式生成调试信息。

DecimalConstantAttribute

Decimal 常量的值存储在元数据中。 无法继承此类。

DefaultDependencyAttribute

向公共语言运行时(CLR)提供提示,指示加载依赖项的可能性。 此类在依赖程序集中使用,以指示父级未指定 DependencyAttribute 属性时应使用什么提示。 无法继承此类。

DependencyAttribute

指示引用程序集何时加载依赖项。 无法继承此类。

DisablePrivateReflectionAttribute

指示程序集类型中包含的任何私有成员都不能反射。

DisableRuntimeMarshallingAttribute

禁用 P/Invokes、委托类型和非托管函数指针调用的内置运行时托管/非托管封送子系统。

DiscardableAttribute

将类型定义标记为可丢弃。

DynamicAttribute

指示对成员使用 Object 应被视为动态调度类型。

EnumeratorCancellationAttribute

允许用户使用异步枚举方法标记应从 GetAsyncEnumerator(CancellationToken)接收取消令牌值的参数。

ExecutionScope

表示动态生成的方法的运行时状态。

ExtensionAttribute

指示方法是扩展方法,或者类或程序集包含扩展方法。

FixedAddressValueTypeAttribute

修复了静态值类型字段在其生存期内的地址。 无法继承此类。

FixedBufferAttribute

指示应将字段视为包含指定基元类型的固定数量的元素。 无法继承此类。

FormattableStringFactory

提供静态方法,用于从复合格式字符串及其参数创建 FormattableString 对象。

HasCopySemanticsAttribute

此类已过时。 无法继承此类。

IDispatchConstantAttribute

指示特性化字段或参数的默认值是 DispatchWrapper的实例,其中 WrappedObjectnull

IndexerNameAttribute

指示索引器在不支持索引器的编程语言中已知的名称。

InlineArrayAttribute

指示实例的存储按顺序复制 Length 次。

InternalsVisibleToAttribute

指定通常仅在当前程序集内可见的类型对指定的程序集可见。

InterpolatedStringHandlerArgumentAttribute

指示应将涉及内插字符串处理程序的方法的参数传递给该处理程序。

InterpolatedStringHandlerAttribute

指示特性化类型将用作内插字符串处理程序。

IsBoxed

指示修改后的引用类型是装箱值类型。 无法继承此类。

IsByRefLikeAttribute

指示结构类似于 byref。

IsByValue

指示修改的方法参数应解释为具有按值传递的对象语义。 此修饰符应用于引用类型。 无法继承此类。

IsConst

指示修改的类型具有 const 修饰符。 无法继承此类。

IsCopyConstructed

指示此类型的任何值复制都必须使用类型提供的复制构造函数。 无法继承此类。

IsExplicitlyDereferenced

指示托管指针表示方法签名中的指针参数。 无法继承此类。

IsExternalInit

保留供编译器用于跟踪元数据。 开发人员不应在源代码中使用此类。

IsImplicitlyDereferenced

指示修改后的垃圾回收引用表示方法签名中的引用参数。 无法继承此类。

IsJitIntrinsic

指示修改的方法是一个固有值,实时 (JIT) 编译器可对其执行特殊代码生成。 无法继承此类。

IsLong

指示修改后的整数是标准C++ long值。 无法继承此类。

IsPinned

指示修改后的实例固定在内存中。 无法继承此类。

IsReadOnlyAttribute

将程序元素标记为只读。

IsSignUnspecifiedByte

指示修饰符既不是已签名,也不是未签名的。 无法继承此类。

IsUdtReturn

指示返回类型是用户定义的类型。 无法继承此类。

IsUnmanagedAttribute

保留供编译器用于跟踪元数据。 开发人员不应在源代码中使用此属性。

IsVolatile

将字段标记为可变。 无法继承此类。

IteratorStateMachineAttribute

指示 Visual Basic 中的方法是否使用 Iterator 修饰符进行标记。

IUnknownConstantAttribute

指示特性化字段或参数的默认值是 UnknownWrapper的实例,其中 WrappedObjectnull。 无法继承此类。

MetadataUpdateOriginalTypeAttribute

在热重载会话期间更新带有 CreateNewOnMetadataUpdateAttribute 标记的类型时,编译器发出。

MethodImplAttribute

指定如何实现方法的详细信息。 无法继承此类。

ModuleInitializerAttribute

用于向编译器指示应在其包含模块的初始值设定项中调用方法。

NativeCppClassAttribute

将元数据应用于指示类型为非托管类型的程序集。 无法继承此类。

NullableAttribute

保留供编译器用于跟踪元数据。 开发人员不应在源代码中使用此属性。

NullableContextAttribute

保留供编译器用于跟踪元数据。 开发人员不应在源代码中使用此属性。

NullablePublicOnlyAttribute

保留供编译器用于跟踪元数据。 开发人员不应在源代码中使用此属性。

OverloadResolutionPriorityAttribute

指定重载解析中成员的优先级。 如果未指定,则默认优先级为 0。

ParamCollectionAttribute

指示方法在其调用中允许可变数量的参数。

PreserveBaseOverridesAttribute

确保对方法的任何虚拟调用(无论是使用方法的基签名还是派生签名)执行最派生的重写。

ReadOnlyCollectionBuilder<T>

只读集合的生成器。

ReferenceAssemblyAttribute

将程序集标识为引用程序集,该程序集包含元数据,但不包含可执行代码。

RefSafetyRulesAttribute

指示编译模块时使用的 ref 安全规则的语言版本。

RequiredAttributeAttribute

指定导入编译器必须完全理解类型定义的语义,或拒绝使用它。 无法继承此类。

RequiredMemberAttribute

指定类型具有必需的成员或成员是必需的。

RequiresLocationAttribute

保留供编译器用于跟踪元数据。 开发人员不应在源代码中使用此属性。

RuleCache<T>

表示运行时绑定规则的缓存。

RuntimeCompatibilityAttribute

指定是否使用 RuntimeWrappedException 对象包装不派生自 Exception 类的异常。 无法继承此类。

RuntimeFeature

定义 API 以确定公共语言运行时是否支持特定功能。

RuntimeHelpers

提供一组静态方法和属性,这些方法和属性为编译器提供支持。 无法继承此类。

RuntimeOps

包含从动态生成的方法调用的帮助程序方法。

RuntimeWrappedException

包装不派生自 Exception 类的异常。 无法继承此类。

ScopedRefAttribute

保留供编译器用于跟踪元数据。 开发人员不应在源代码中使用此属性。

ScopelessEnumAttribute

指示枚举类型名称不限定本机枚举。 无法继承此类。

SkipLocalsInitAttribute

向编译器指示在向元数据发出时,不应在嵌套方法标头中设置 .locals init 标志。

SpecialNameAttribute

指示运行时或工具以特殊方式处理类型或成员。 无法继承此类。

StateMachineAttribute

允许你确定方法是否为状态机方法。

StringFreezingAttribute

荒废的。 使用 Ngen.exe(本机映像生成器)创建本机映像时冻结字符串文本。 无法继承此类。

StrongBox<T>

保留对值的引用。

SuppressIldasmAttribute

防止 Ildasm.exe(IL 反汇编程序) 反汇编程序集。 无法继承此类。

SwitchExpressionException

指示未详尽的开关表达式在运行时无法匹配其输入。 异常(可选)包含表示不匹配值的对象。

TupleElementNamesAttribute

指示对成员使用值元组应被视为具有元素名称的元组。

TypeForwardedFromAttribute

在另一个程序集中指定源 Type

TypeForwardedToAttribute

在另一个程序集中指定目标 Type

Unsafe

包含用于操作托管指针和非托管指针的通用低级别功能。

UnsafeAccessorAttribute

提供对特定类型的不可访问成员的访问权限。

UnsafeValueTypeAttribute

指定类型包含可能溢出的非托管数组。 无法继承此类。

结构

AsyncIteratorMethodBuilder

表示异步迭代器的生成器。

AsyncTaskMethodBuilder

表示返回任务的异步方法的生成器。

AsyncTaskMethodBuilder<TResult>

表示返回任务的异步方法的生成器,并为结果提供参数。

AsyncValueTaskMethodBuilder

表示返回 ValueTask的异步方法的生成器。

AsyncValueTaskMethodBuilder<TResult>

表示返回 ValueTask<TResult>的异步方法的生成器。

AsyncVoidMethodBuilder

表示不返回值的异步方法的生成器。

ConfiguredAsyncDisposable

提供一种类型,可用于配置 IAsyncDisposable 上的 awaits 的执行方式。

ConfiguredCancelableAsyncEnumerable<T>.Enumerator

提供可等待的异步枚举器,该枚举器支持可取消的迭代和配置的 await。

ConfiguredCancelableAsyncEnumerable<T>

提供可等待的异步枚举,该枚举可实现可取消的迭代和配置的 await。

ConfiguredTaskAwaitable

提供一个可等待的对象,该对象允许在任务上配置等待。

ConfiguredTaskAwaitable.ConfiguredTaskAwaiter

为可等待的 (ConfiguredTaskAwaitable) 对象提供 awaiter。

ConfiguredTaskAwaitable<TResult>.ConfiguredTaskAwaiter

为可等待的对象(ConfiguredTaskAwaitable<TResult>)提供等待程序。

ConfiguredTaskAwaitable<TResult>

提供一个可等待的对象,该对象允许在任务上配置等待。

ConfiguredValueTaskAwaitable

提供一种可等待类型,可在 ValueTask上启用配置的 await。

ConfiguredValueTaskAwaitable.ConfiguredValueTaskAwaiter

ConfiguredValueTaskAwaitable提供等待程序。

ConfiguredValueTaskAwaitable<TResult>.ConfiguredValueTaskAwaiter

ConfiguredValueTaskAwaitable<TResult>提供等待程序。

ConfiguredValueTaskAwaitable<TResult>

提供一种可等待类型,可在 ValueTask<TResult>上启用配置的 await。

DefaultInterpolatedStringHandler

提供语言编译器用于将内插字符串处理到 String 实例中的处理程序。

PoolingAsyncValueTaskMethodBuilder

表示返回 ValueTask的异步方法的生成器。

PoolingAsyncValueTaskMethodBuilder<TResult>

表示返回 ValueTask<TResult>的异步方法的生成器。

TaskAwaiter

提供等待异步任务完成的对象。

TaskAwaiter<TResult>

表示等待异步任务完成并为结果提供参数的对象。

ValueTaskAwaiter

ValueTask提供等待程序。

ValueTaskAwaiter<TResult>

ValueTask<TResult>提供等待程序。

YieldAwaitable

提供在异步切换到目标环境时等待的上下文。

YieldAwaitable.YieldAwaiter

提供用于切换到目标环境的等待程序。

接口

IAsyncStateMachine

表示为异步方法生成的状态计算机。 此类型仅用于编译器使用。

ICriticalNotifyCompletion

表示在等待操作完成时计划延续的等待程序。

INotifyCompletion

表示在完成时计划延续的操作。

IRuntimeVariables

表示运行时变量的值。

IStrongBox

定义用于访问对象引用的值的属性。

ITuple

定义一个常规用途元组实现,该实现允许访问元组实例成员,而无需了解基础元组类型。

枚举

CompilationRelaxations

指定控制公共语言运行时实时 (JIT) 编译器生成的代码的严格性的参数。

LoadHint

指定依赖程序集的首选默认绑定。

MethodCodeType

定义如何实现方法。

MethodImplOptions

指定定义如何实现方法的详细信息的常量。

UnsafeAccessorKind

指定 UnsafeAccessorAttribute 向其提供访问权限的目标类型。

委托

ConditionalWeakTable<TKey,TValue>.CreateValueCallback

表示一个方法,该方法创建一个非默认值,以作为键/值对的一部分添加到 ConditionalWeakTable<TKey,TValue> 对象。

RuntimeHelpers.CleanupCode

表示在发生异常时要运行的方法。

RuntimeHelpers.TryCode

表示应在 try 块中运行的代码的委托。

注解

此命名空间主要用于编译器编写器,尽管其多个类(如 InternalsVisibleToAttribute)用于各种应用程序。