System.Runtime.CompilerServices Przestrzeń nazw

Udostępnia funkcje dla autorów kompilatora, którzy używają kodu zarządzanego do określania atrybutów w metadanych mających wpływ na zachowanie środowiska uruchomieniowego języka wspólnego.

Klasy

AccessedThroughPropertyAttribute

Określa nazwę właściwości, która uzyskuje dostęp do pola przypisanego.

AsyncIteratorStateMachineAttribute

Wskazuje, czy metoda jest iteratorem asynchronicznym.

AsyncMethodBuilderAttribute

Wskazuje typ konstruktora metod asynchronicznych, który powinien być używany przez kompilator języka do kompilowania typu przypisanego, gdy jest używany jako zwracany typ metody asynchronicznej.

AsyncStateMachineAttribute

Wskazuje, czy metoda jest oznaczona za pomocą modyfikatora asynchronicznego lub asynchronicznego .

CallConvCdecl

Wskazuje, że metoda powinna używać Cdecl konwencji wywoływania.

CallConvFastcall

Ta konwencja wywoływania nie jest obsługiwana w tej wersji platformy .NET.

CallConvMemberFunction

Wskazuje, że używana konwencja wywoływania jest wariantem funkcji składowej.

CallConvStdcall

Wskazuje, że metoda powinna używać StdCall konwencji wywoływania.

CallConvSuppressGCTransition

Wskazuje, że metoda powinna pominąć przejście GC w ramach konwencji wywoływania.

CallConvSwift

Udostępnia funkcje dla autorów kompilatora, którzy używają kodu zarządzanego do określania atrybutów w metadanych mających wpływ na zachowanie środowiska uruchomieniowego języka wspólnego.

CallConvThiscall

Wskazuje, że metoda powinna używać ThisCall konwencji wywoływania.

CallerArgumentExpressionAttribute

Wskazuje, że parametr przechwytuje wyrażenie przekazane dla innego parametru jako ciąg.

CallerFilePathAttribute

Umożliwia uzyskanie pełnej ścieżki pliku źródłowego zawierającego obiekt wywołujący. Jest to ścieżka pliku w czasie kompilacji.

CallerLineNumberAttribute

Umożliwia uzyskanie numeru wiersza w pliku źródłowym, w którym jest wywoływana metoda.

CallerMemberNameAttribute

Umożliwia uzyskanie metody lub nazwy właściwości obiektu wywołującego do metody .

CallSite

Dynamiczna klasa bazowa wywołania lokacji. Ten typ jest używany jako typ parametru dla dynamicznych obiektów docelowych lokacji.

CallSite<T>

Typ witryny dynamicznej.

CallSiteBinder

Klasa odpowiedzialna za powiązanie środowiska uruchomieniowego operacji dynamicznych w lokacji wywołań dynamicznych.

CallSiteHelpers

Klasa zawierająca metody pomocnicze dla wywołań DLR.

CallSiteOps

Tworzy i buforuje reguły powiązań.

Closure

Reprezentuje stan środowiska uruchomieniowego metody generowanej dynamicznie.

CollectionBuilderAttribute

Udostępnia funkcje dla autorów kompilatora, którzy używają kodu zarządzanego do określania atrybutów w metadanych mających wpływ na zachowanie środowiska uruchomieniowego języka wspólnego.

CompilationRelaxationsAttribute

Steruje ścisłością kodu generowanego przez kompilator just in time (JIT) środowiska uruchomieniowego języka wspólnego.

CompilerFeatureRequiredAttribute

Wskazuje, że obsługa kompilatora dla określonej funkcji jest wymagana dla lokalizacji, w której ten atrybut jest stosowany.

CompilerGeneratedAttribute

Rozróżnia element wygenerowany przez kompilator na podstawie elementu wygenerowanego przez użytkownika. Klasa ta nie może być dziedziczona.

CompilerGlobalScopeAttribute

Wskazuje, że klasa powinna być traktowana tak, jakby ma zakres globalny.

CompilerMarshalOverride

Wskazuje, że zmodyfikowane wystąpienie zmiennej różni się od rzeczywistego typu podczas marshalingu. Klasa ta nie może być dziedziczona.

ConditionalWeakTable<TKey,TValue>

Umożliwia kompilatorom dynamiczne dołączanie pól obiektów do obiektów zarządzanych.

ContractHelper

Udostępnia metody używane przez program binarny do obsługi niepowodzeń kontraktów.

CppInlineNamespaceAttribute

Definiuje śródliniową przestrzeń nazw w języku C++/interfejsie wiersza polecenia.

CreateNewOnMetadataUpdateAttribute

Wskazuje, że typ należy zastąpić, a nie aktualizować podczas stosowania aktualizacji metadanych.

CustomConstantAttribute

Definiuje stałą wartość, którą kompilator może utrwalać dla parametru pola lub metody.

DateTimeConstantAttribute

Utrwala stałą 8-bajtową DateTime dla pola lub parametru.

DebugInfoGenerator

Generuje informacje debugowania dla wyrażeń lambda w drzewie wyrażeń.

DecimalConstantAttribute

Przechowuje wartość stałej Decimal w metadanych. Klasa ta nie może być dziedziczona.

DefaultDependencyAttribute

Zawiera wskazówkę dla środowiska uruchomieniowego języka wspólnego (CLR) wskazującą prawdopodobieństwo załadowania zależności. Ta klasa jest używana w zestawie zależnym, aby wskazać, jakiej wskazówki należy użyć, gdy obiekt nadrzędny nie określa atrybutu DependencyAttribute . Klasa ta nie może być dziedziczona.

DependencyAttribute

Wskazuje, kiedy zależność ma zostać załadowana przez zestaw odwołujący się. Klasa ta nie może być dziedziczona.

DisablePrivateReflectionAttribute

Wskazuje, że żadne prywatne elementy członkowskie zawarte w typach zestawu nie są dostępne do odbicia.

DisableRuntimeMarshallingAttribute

Wyłącza wbudowany podsystem zarządzania/niezarządzanych marshallingu środowiska uruchomieniowego dla wywołań P/Invoke, Delegate i niezarządzanych wywołań wskaźnika funkcji.

DiscardableAttribute

Oznacza definicję typu jako odrzuconą.

DynamicAttribute

Wskazuje, że użycie Object elementu członkowskiego ma być traktowane jako dynamicznie wysyłany typ.

EnumeratorCancellationAttribute

Umożliwia użytkownikom metod async-enumerable oznaczenie parametru, który powinien otrzymać wartość tokenu anulowania z GetAsyncEnumerator(CancellationToken).

ExecutionScope

Reprezentuje stan środowiska uruchomieniowego metody generowanej dynamicznie.

ExtensionAttribute

Wskazuje, że metoda jest metodą rozszerzenia lub klasa lub zestaw zawiera metody rozszerzenia.

FixedAddressValueTypeAttribute

Naprawia adres pola typu wartości statycznej przez cały okres istnienia. Klasa ta nie może być dziedziczona.

FixedBufferAttribute

Wskazuje, że pole powinno być traktowane jako zawierające stałą liczbę elementów określonego typu pierwotnego. Klasa ta nie może być dziedziczona.

FormattableStringFactory

Udostępnia metodę statyczną do utworzenia FormattableString obiektu na podstawie ciągu formatu złożonego i jego argumentów.

HasCopySemanticsAttribute

Ta klasa jest przestarzała. Klasa ta nie może być dziedziczona.

IDispatchConstantAttribute

Wskazuje, że wartość domyślna dla pola lub parametru atrybutu jest wystąpieniem DispatchWrapper, gdzie jest WrappedObjectnull.

IndexerNameAttribute

Wskazuje nazwę, za pomocą której indeksator jest znany w językach programowania, które nie obsługują bezpośrednio indeksatorów.

InlineArrayAttribute

Wskazuje, że magazyn wystąpienia jest sekwencyjnie replikowany Length czas.

InternalsVisibleToAttribute

Określa, że typy, które są zwykle widoczne tylko w bieżącym zestawie są widoczne dla określonego zestawu.

InterpolatedStringHandlerArgumentAttribute

Wskazuje, które argumenty do metody obejmującej interpolowaną procedurę obsługi ciągów powinny być przekazywane do tej procedury obsługi.

InterpolatedStringHandlerAttribute

Wskazuje, że typ przypisany ma być używany jako procedura obsługi ciągów interpolowanych.

IsBoxed

Wskazuje, że zmodyfikowany typ odwołania jest typem wartości pola. Klasa ta nie może być dziedziczona.

IsByRefLikeAttribute

Wskazuje, że struktura jest podobna do byref.

IsByValue

Wskazuje, że zmodyfikowany argument metody powinien być interpretowany jako mający semantyka obiektu przekazywanego przez wartość. Ten modyfikator jest stosowany do typów referencyjnych. Klasa ta nie może być dziedziczona.

IsConst

Wskazuje, że zmodyfikowany typ ma const modyfikator. Klasa ta nie może być dziedziczona.

IsCopyConstructed

Wskazuje, że każda kopia wartości tego typu musi używać konstruktora kopii dostarczonego przez typ. Klasa ta nie może być dziedziczona.

IsExplicitlyDereferenced

Wskazuje, że zarządzany wskaźnik reprezentuje parametr wskaźnika w ramach podpisu metody. Klasa ta nie może być dziedziczona.

IsExternalInit

Zarezerwowane do użycia przez kompilator do śledzenia metadanych. Ta klasa nie powinna być używana przez deweloperów w kodzie źródłowym.

IsImplicitlyDereferenced

Wskazuje, że zmodyfikowane odwołanie do odzyskiwania pamięci reprezentuje parametr referencyjny w ramach sygnatury metody. Klasa ta nie może być dziedziczona.

IsJitIntrinsic

Wskazuje, że zmodyfikowana metoda jest wartością wewnętrzną, dla której kompilator just in time (JIT) może wykonywać specjalne generowanie kodu. Klasa ta nie może być dziedziczona.

IsLong

Wskazuje, że zmodyfikowana liczba całkowita jest standardową wartością języka C++ long . Klasa ta nie może być dziedziczona.

IsPinned

Wskazuje, że zmodyfikowane wystąpienie jest przypięte w pamięci. Klasa ta nie może być dziedziczona.

IsReadOnlyAttribute

Oznacza element programu jako tylko do odczytu.

IsSignUnspecifiedByte

Wskazuje, że modyfikator nie jest podpisany ani niepodpisany. Klasa ta nie może być dziedziczona.

IsUdtReturn

Wskazuje, że zwracany typ jest typem zdefiniowanym przez użytkownika. Klasa ta nie może być dziedziczona.

IsUnmanagedAttribute

Zarezerwowane do użycia przez kompilator do śledzenia metadanych. Ten atrybut nie powinien być używany przez deweloperów w kodzie źródłowym.

IsVolatile

Oznacza pole jako nietrwałe. Klasa ta nie może być dziedziczona.

IteratorStateMachineAttribute

Wskazuje, czy metoda w Visual Basic jest oznaczona modyfikatorem Iterator .

IUnknownConstantAttribute

Wskazuje, że wartość domyślna pola lub parametru przypisanego to wystąpienie klasy UnknownWrapper, gdzie WrappedObject parametr to null. Klasa ta nie może być dziedziczona.

MetadataUpdateOriginalTypeAttribute

Emitowane przez kompilator, gdy typ oznaczony za pomocą CreateNewOnMetadataUpdateAttribute jest aktualizowany podczas sesji ponownego ładowania na gorąco.

MethodImplAttribute

Określa szczegóły sposobu implementacji metody. Klasa ta nie może być dziedziczona.

ModuleInitializerAttribute

Służy do wskazywania kompilatorowi, że metoda powinna być wywoływana w inicjatorze modułu zawierającego.

NativeCppClassAttribute

Stosuje metadane do zestawu, który wskazuje, że typ jest typem niezarządzanym. Klasa ta nie może być dziedziczona.

NullableAttribute

Zarezerwowane do użycia przez kompilator do śledzenia metadanych. Ten atrybut nie powinien być używany przez deweloperów w kodzie źródłowym.

NullableContextAttribute

Zarezerwowane do użycia przez kompilator do śledzenia metadanych. Ten atrybut nie powinien być używany przez deweloperów w kodzie źródłowym.

NullablePublicOnlyAttribute

Zarezerwowane do użycia przez kompilator do śledzenia metadanych. Ten atrybut nie powinien być używany przez deweloperów w kodzie źródłowym.

PreserveBaseOverridesAttribute

Gwarantuje, że każde wirtualne wywołanie metody, niezależnie od tego, czy używa podpisu podstawowego, czy pochodnego podpisu metody, wykonuje najbardziej pochodne przesłonięcia.

ReadOnlyCollectionBuilder<T>

Konstruktor kolekcji tylko do odczytu.

ReferenceAssemblyAttribute

Identyfikuje zestaw jako zestaw referencyjny, który zawiera metadane, ale nie ma kodu wykonywalnego.

RefSafetyRulesAttribute

Wskazuje wersję językową reguł bezpieczeństwa ref używanych podczas kompilowania modułu.

RequiredAttributeAttribute

Określa, że kompilator importu musi w pełni zrozumieć semantyka definicji typu lub odmówić jej użycia. Klasa ta nie może być dziedziczona.

RequiredMemberAttribute

Określa, że typ ma wymagane elementy członkowskie lub że element członkowski jest wymagany.

RequiresLocationAttribute

Zarezerwowane do użycia przez kompilator do śledzenia metadanych. Ten atrybut nie powinien być używany przez deweloperów w kodzie źródłowym.

RuleCache<T>

Reprezentuje pamięć podręczną reguł powiązań środowiska uruchomieniowego.

RuntimeCompatibilityAttribute

Określa, czy należy zawijać wyjątki, które nie pochodzą z Exception klasy z obiektem RuntimeWrappedException . Klasa ta nie może być dziedziczona.

RuntimeFeature

Definiuje interfejsy API, aby określić, czy określone funkcje są obsługiwane przez środowisko uruchomieniowe języka wspólnego.

RuntimeHelpers

Udostępnia zestaw metod statycznych i właściwości, które zapewniają obsługę kompilatorów. Klasa ta nie może być dziedziczona.

RuntimeOps

Zawiera metody pomocnika wywoływane z dynamicznie generowanych metod.

RuntimeWrappedException

Opakowuje wyjątek, który nie pochodzi z Exception klasy. Klasa ta nie może być dziedziczona.

ScopedRefAttribute

Zarezerwowane do użycia przez kompilator do śledzenia metadanych. Ten atrybut nie powinien być używany przez deweloperów w kodzie źródłowym.

ScopelessEnumAttribute

Wskazuje, że natywna wyliczenie nie jest kwalifikowana przez nazwę typu wyliczenia. Klasa ta nie może być dziedziczona.

SkipLocalsInitAttribute

Wskazuje kompilatorowi, że flaga init .locals nie powinna być ustawiana w nagłówkach zagnieżdżonych metod podczas emitowania do metadanych.

SpecialNameAttribute

Wskazuje, że typ lub element członkowski jest traktowany w specjalny sposób przez środowisko uruchomieniowe lub narzędzia. Klasa ta nie może być dziedziczona.

StateMachineAttribute

Umożliwia określenie, czy metoda jest metodą maszyny stanu.

StringFreezingAttribute

Przestarzałe. Blokuje literał ciągu podczas tworzenia obrazów natywnych przy użyciu Ngen.exe (generatora obrazów natywnych). Klasa ta nie może być dziedziczona.

StrongBox<T>

Przechowuje odwołanie do wartości.

SuppressIldasmAttribute

Zapobiega dezasemblowaniu zestawuIldasm.exe (IL Dezasembler ). Klasa ta nie może być dziedziczona.

SwitchExpressionException

Wskazuje, że wyrażenie przełącznika, które nie było wyczerpujące, nie pasuje do jego danych wejściowych w czasie wykonywania. Wyjątek opcjonalnie zawiera obiekt reprezentujący niedopasowaną wartość.

TupleElementNamesAttribute

Wskazuje, że użycie krotki wartości na elemencie członkowskim ma być traktowane jako krotka z nazwami elementów.

TypeForwardedFromAttribute

Określa źródło Type w innym zestawie.

TypeForwardedToAttribute

Określa miejsce docelowe Type w innym zestawie.

Unsafe

Zawiera ogólne funkcje niskiego poziomu do manipulowania zarządzanymi i niezarządzanym wskaźnikami.

UnsafeAccessorAttribute

Zapewnia dostęp do niedostępnego elementu członkowskiego określonego typu.

UnsafeValueTypeAttribute

Określa, że typ zawiera tablicę niezarządzaną, która może potencjalnie przepełnić. Klasa ta nie może być dziedziczona.

Struktury

AsyncIteratorMethodBuilder

Reprezentuje konstruktora dla iteratorów asynchronicznych.

AsyncTaskMethodBuilder

Reprezentuje konstruktora metod asynchronicznych, które zwracają zadanie.

AsyncTaskMethodBuilder<TResult>

Reprezentuje konstruktor metod asynchronicznych, który zwraca zadanie i udostępnia parametr dla wyniku.

AsyncValueTaskMethodBuilder

Reprezentuje konstruktora metod asynchronicznych, które zwracają element ValueTask.

AsyncValueTaskMethodBuilder<TResult>

Reprezentuje konstruktora metod asynchronicznych, które zwracają wartość ValueTask<TResult>.

AsyncVoidMethodBuilder

Reprezentuje konstruktora metod asynchronicznych, które nie zwracają wartości.

ConfiguredAsyncDisposable

Udostępnia typ, który może służyć do konfigurowania sposobu oczekiwania na IAsyncDisposable wykonanie.

ConfiguredCancelableAsyncEnumerable<T>.Enumerator

Zapewnia oczekiwany asynchroniczny moduł wyliczający, który umożliwia anulowanie iteracji i skonfigurowane oczekiwanie.

ConfiguredCancelableAsyncEnumerable<T>

Zapewnia oczekujące asynchroniczne wyliczanie, które umożliwia anulowanie iteracji i skonfigurowane oczekiwanie.

ConfiguredTaskAwaitable

Udostępnia oczekiwany obiekt, który umożliwia skonfigurowanie oczekiwania na zadanie.

ConfiguredTaskAwaitable.ConfiguredTaskAwaiter

Zapewnia obiekt awaiter dla obiektu oczekującego (ConfiguredTaskAwaitable).

ConfiguredTaskAwaitable<TResult>.ConfiguredTaskAwaiter

Zapewnia obiekt awaiter dla oczekiwanego obiektu(ConfiguredTaskAwaitable<TResult>).

ConfiguredTaskAwaitable<TResult>

Udostępnia oczekiwany obiekt, który umożliwia skonfigurowanie oczekiwania na zadanie.

ConfiguredValueTaskAwaitable

Zapewnia oczekiwany typ, który umożliwia skonfigurowanie oczekuje na element ValueTask.

ConfiguredValueTaskAwaitable.ConfiguredValueTaskAwaiter

Udostępnia obiekt awaiter dla elementu ConfiguredValueTaskAwaitable.

ConfiguredValueTaskAwaitable<TResult>.ConfiguredValueTaskAwaiter

Udostępnia obiekt awaiter dla elementu ConfiguredValueTaskAwaitable<TResult>.

ConfiguredValueTaskAwaitable<TResult>

Zapewnia oczekiwany typ, który umożliwia skonfigurowanie oczekuje na element ValueTask<TResult>.

DefaultInterpolatedStringHandler

Udostępnia procedurę obsługi używaną przez kompilator języka do przetwarzania ciągów interpolowanych w String wystąpieniach.

PoolingAsyncValueTaskMethodBuilder

Reprezentuje konstruktor metod asynchronicznych, które zwracają ValueTaskelement .

PoolingAsyncValueTaskMethodBuilder<TResult>

Reprezentuje konstruktora dla metod asynchronicznych, które zwracają ValueTask<TResult>wartość .

TaskAwaiter

Udostępnia obiekt, który czeka na ukończenie zadania asynchronicznego.

TaskAwaiter<TResult>

Reprezentuje obiekt, który czeka na ukończenie zadania asynchronicznego i udostępnia parametr dla wyniku.

ValueTaskAwaiter

Udostępnia obiekt awaiter dla elementu ValueTask.

ValueTaskAwaiter<TResult>

Udostępnia obiekt awaiter dla elementu ValueTask<TResult>.

YieldAwaitable

Zapewnia kontekst oczekiwania podczas asynchronicznego przełączania się do środowiska docelowego.

YieldAwaitable.YieldAwaiter

Zapewnia oczekiwanie na przełączenie się do środowiska docelowego.

Interfejsy

IAsyncStateMachine

Reprezentuje maszyny stanów generowane dla metod asynchronicznych. Ten typ jest przeznaczony tylko do użytku kompilatora.

ICriticalNotifyCompletion

Reprezentuje obiekt oczekujący, który planuje kontynuacje po zakończeniu operacji await.

INotifyCompletion

Reprezentuje operację, która planuje kontynuacje po zakończeniu.

IRuntimeVariables

Reprezentuje wartości zmiennych czasu wykonywania.

IStrongBox

Definiuje właściwość umożliwiającą uzyskanie dostępu do wartości, do której odwołuje się obiekt.

ITuple

Definiuje implementację krotki ogólnego przeznaczenia, która umożliwia dostęp do składowych wystąpień krotki bez znajomości bazowego typu krotki.

Wyliczenia

CompilationRelaxations

Określa parametry kontrolujące ścisłość kodu wygenerowanego przez kompilator just-in-time (JIT) środowiska uruchomieniowego języka wspólnego.

LoadHint

Określa preferowane powiązanie domyślne dla zestawu zależnego.

MethodCodeType

Definiuje sposób implementacji metody.

MethodImplOptions

Określa stałe definiujące szczegóły implementacji metody.

UnsafeAccessorKind

Określa rodzaj obiektu docelowego, do którego UnsafeAccessorAttribute zapewnia dostęp.

Delegaci

ConditionalWeakTable<TKey,TValue>.CreateValueCallback

Reprezentuje metodę, która tworzy wartość inną niż domyślna do dodania jako część pary klucz/wartość do ConditionalWeakTable<TKey,TValue> obiektu.

RuntimeHelpers.CleanupCode

Reprezentuje metodę do uruchomienia w przypadku wystąpienia wyjątku.

RuntimeHelpers.TryCode

Reprezentuje delegata do kodu, który powinien być uruchamiany w bloku try.

Uwagi

Ta przestrzeń nazw jest przeznaczona głównie dla pisarzy kompilatora, chociaż kilka jej klas, takich jak InternalsVisibleToAttribute, jest używanych w wielu różnych aplikacjach.