Expand Minimize

System.Runtime.CompilerServices Namespace

May 11, 2014

This API supports the .NET Framework infrastructure and is not intended to be used directly from your code.

The System.Runtime.CompilerServices namespace provides functionality for compiler writers who use managed code to specify attributes in metadata that affect the run-time behavior of the common language runtime.

  ClassDescription
Public classAccessedThroughPropertyAttributeInfrastructure. Specifies the name of the property that accesses the attributed field.
Public classAsyncStateMachineAttributeAllows you to determine whether a method is marked with the Async (Visual Basic) or async (C# Reference) modifier.
Public classCallerFilePathAttributeAllows you to obtain the full path of the source file that contains the caller. This is the file path at the time of compile.
Public classCallerLineNumberAttributeAllows you to obtain the line number in the source file at which the method is called.
Public classCallerMemberNameAttributeAllows you to obtain the method or property name of the caller to the method.
Public classCallSiteA dynamic call site base class. This type is used as a parameter type to the dynamic site targets.
Public classCallSite<T>Dynamic site type.
Public classCallSiteBinderClass responsible for runtime binding of the dynamic operations on the dynamic call site.
Public classCallSiteHelpersClass that contains helper methods for DLR CallSites.
Public classCodeGenerationAttributeSpecifies settings for code generation.
Public classCompilationRelaxationsAttributeInfrastructure. Controls the strictness of the code generated by the common language runtime's just-in-time (JIT) compiler.
Public classCompilerGeneratedAttributeInfrastructure. Distinguishes a compiler-generated element from a user-generated element. This class cannot be inherited.
Public classConditionalWeakTable<TKey, TValue>Enables compilers to dynamically attach object fields to managed objects.
Public classContractHelperProvides methods that the binary rewriter uses to handle contract failures.
Public classCustomConstantAttributeInfrastructure. Defines a constant value that a compiler can persist for a field or method parameter.
Public classDateTimeConstantAttributeInfrastructure. Persists an 8-byte DateTime constant for a field or parameter.
Public classDecimalConstantAttributeInfrastructure. Stores the value of a System.Decimal constant in metadata. This class cannot be inherited.
Public classDynamicAttributeIndicates that the use of Object on a member is meant to be treated as a dynamically dispatched type.
Public classExecutionScopeInfrastructure. Obsolete. Represents the runtime state of a dynamically generated method.
Public classExtensionAttributeInfrastructure. Indicates that a method is an extension method, or that a class or assembly contains extension methods.
Public classFixedBufferAttributeInfrastructure. Indicates that a field should be treated as containing a fixed number of elements of the specified primitive type. This class cannot be inherited.
Public classIndexerNameAttributeInfrastructure. Indicates the name by which an indexer is known in programming languages that do not support indexers directly.
Public classInternalsVisibleToAttributeInfrastructure. Specifies that types that are ordinarily visible only within the current assembly are visible to another assembly.
Public classIsVolatileInfrastructure. Marks a field as volatile. This class cannot be inherited.
Public classIteratorStateMachineAttributeAllows you to determine whether a method in Visual Basic is marked with the Iterator modifier.
Public classMethodImplAttributeInfrastructure. Specifies the details of how a method is implemented. This class cannot be inherited.
Public classReferenceAssemblyAttributeIdentifies an assembly as containing metadata and not executable code.
Public classRuntimeCompatibilityAttributeInfrastructure. Specifies whether to wrap exceptions that do not derive from the Exception. This class cannot be inherited.
Public classRuntimeHelpersInfrastructure. Provides a set of static methods and properties that provide support for compilers. This class cannot be inherited.
Public classStateMachineAttributeAllows you to determine whether a method is a state machine method.
Public classStrongBox<T>Infrastructure. Holds a reference to a value.
Public classTypeForwardedFromAttributeSpecifies a source Type in another assembly.
Public classTypeForwardedToAttributeSpecifies a destination Type in another assembly. This class cannot be inherited.
Public classUnsafeValueTypeAttributeInfrastructure. Specifies that a type contains an unmanaged array that might potentially overflow. This class cannot be inherited.

  StructureDescription
Public structureAsyncTaskMethodBuilderRepresents a builder for asynchronous methods that return a task.
Public structureAsyncTaskMethodBuilder<TResult>Represents a builder for asynchronous methods that return a task and provides a parameter for the result.
Public structureAsyncVoidMethodBuilderRepresents a builder for asynchronous methods that do not return a value.
Public structureConfiguredTaskAwaitableProvides an awaitable object that allows for configured awaits on Task.
Public structureConfiguredTaskAwaitable.ConfiguredTaskAwaiterProvides an awaiter for a ConfiguredTaskAwaitable.
Public structureConfiguredTaskAwaitable<TResult>Provides an awaitable object that allows for configured awaits on Task<TResult>.
Public structureConfiguredTaskAwaitable<TResult>.ConfiguredTaskAwaiterProvides an awaiter for a ConfiguredTaskAwaitable<TResult>.
Public structureTaskAwaiterProvides an object that waits for the completion of an asynchronous task.
Public structureTaskAwaiter<TResult>Represents an object that waits for the completion of an asynchronous task and provides a parameter for the result.
Public structureYieldAwaitableProvides the context for waiting when asynchronously switching into a target environment.
Public structureYieldAwaitable.YieldAwaiterProvides an awaiter for switching into a target environment.

  InterfaceDescription
Public interfaceIAsyncStateMachineRepresents state machines that are generated for asynchronous methods. This type is intended for compiler use only.
Public interfaceICriticalNotifyCompletionRepresents an awaiter that schedules continuations when an await operation completes.
Public interfaceINotifyCompletionRepresents an operation that schedules continuations when it completes.
Public interfaceIStrongBoxInfrastructure. Defines a property for accessing the value that an object references.

  DelegateDescription
Public delegateConditionalWeakTable<TKey, TValue>.CreateValueCallbackRepresents a method that creates a non-default value to add as part of a key/value pair to a ConditionalWeakTable<TKey, TValue> object.

  EnumerationDescription
Public enumerationCodeGenerationFlagsDefines flags that specify how code is generated.
Public enumerationCompilationRelaxationsInfrastructure. Specifies parameters that control the strictness of the code generated by the common language runtime's just-in-time (JIT) compiler.
Public enumerationMethodCodeTypeInfrastructure. Defines how a method is implemented.
Public enumerationMethodImplOptionsInfrastructure. Defines the details of how a method is implemented.

Show:
© 2014 Microsoft