Udostępnij za pośrednictwem


System.Runtime.CompilerServices Przestrzeń nazw

Udostępnia funkcje składników zapisywania kompilatora, którzy używają kodu zarządzanego do określania atrybutów w metadanych, które mają 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 typ zwracany 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 składników zapisywania kompilatora, którzy używają kodu zarządzanego do określania atrybutów w metadanych, które mają 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 momencie 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łań 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 dynamicznej lokacji wywołań.

CallSiteHelpers

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

CallSiteOps

Tworzy i buforuje reguły powiązań.

Closure

Reprezentuje stan środowiska uruchomieniowego metody generowanej dynamicznie.

CollectionBuilderAttribute

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

CompilationRelaxationsAttribute

Kontroluje ścisłość kodu wygenerowanego 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 jest stosowany ten atrybut.

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 ona 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 maszynę binarną 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

Utrzymuje stałą 8 bajtów 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ę dotyczącą środowiska uruchomieniowego języka wspólnego (CLR) wskazującego, jak prawdopodobne jest załadowanie zależności. Ta klasa jest używana w zestawie zależnym, aby wskazać, jaka wskazówka powinna być używana, gdy element 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 wszystkie prywatne elementy członkowskie zawarte w typach zestawu nie są dostępne do odbicia.

DisableRuntimeMarshallingAttribute

Wyłącza wbudowany podsystem zarządzania/niezarządzanego marshallingu środowiska uruchomieniowego dla wywołań P/Invoke, typów delegatów i wywołań niezarządzanych funkcji.

DiscardableAttribute

Oznacza definicję typu jako odrzucaną.

DynamicAttribute

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

EnumeratorCancellationAttribute

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

ExecutionScope

Reprezentuje stan środowiska uruchomieniowego metody generowanej dynamicznie.

ExtensionAttribute

Wskazuje, że metoda jest metodą rozszerzenia lub że 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 pola lub parametru przypisanego to wystąpienie klasy DispatchWrapper, gdzie WrappedObject parametr to null.

IndexerNameAttribute

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

InlineArrayAttribute

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

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 procedurę obsługi ciągów interpolowanych powinny być przekazywane do tej procedury obsługi.

InterpolatedStringHandlerAttribute

Wskazuje, że typ atrybutu 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 typu byref.

IsByValue

Wskazuje, że zmodyfikowany argument metody powinien być interpretowany jako semantyka obiektu przekazywanego według wartości. 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 kopiowania dostarczonego przez typ. Klasa ta nie może być dziedziczona.

IsExplicitlyDereferenced

Wskazuje, że zarządzany wskaźnik reprezentuje parametr wskaźnika w ramach sygnatury 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 odwołania 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 dla pola lub parametru atrybutu jest wystąpieniem UnknownWrapper, gdzie jest WrappedObjectnull. 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 zostać wywołana w inicjatorze zawierającym moduł.

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.

ParamCollectionAttribute

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

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 zawiera kodu wykonywalnego.

RefSafetyRulesAttribute

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

RequiredAttributeAttribute

Określa, że importujący kompilator musi w pełni zrozumieć semantykę 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 w celu określenia, 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 pomocnicze 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 wyliczenie natywne nie jest kwalifikowane 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 metody zagnieżdżonej 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 (dezasembler IL ). 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ądzanych wskaźnikami.

UnsafeAccessorAttribute

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

UnsafeValueTypeAttribute

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

Struktury

AsyncIteratorMethodBuilder

Reprezentuje konstruktora iteratorów asynchronicznych.

AsyncTaskMethodBuilder

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

AsyncTaskMethodBuilder<TResult>

Reprezentuje konstruktor metod asynchronicznych, które zwracają zadanie i udostępnia parametr dla wyniku.

AsyncValueTaskMethodBuilder

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

AsyncValueTaskMethodBuilder<TResult>

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

AsyncVoidMethodBuilder

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

ConfiguredAsyncDisposable

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

ConfiguredCancelableAsyncEnumerable<T>.Enumerator

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

ConfiguredCancelableAsyncEnumerable<T>

Zapewnia oczekiwaną asynchronizację, która umożliwia anulowanie iteracji i skonfigurowane oczekiwania.

ConfiguredTaskAwaitable

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

ConfiguredTaskAwaitable.ConfiguredTaskAwaiter

Udostępnia obiekt awaiter dla obiektu oczekującego (ConfiguredTaskAwaitable).

ConfiguredTaskAwaitable<TResult>.ConfiguredTaskAwaiter

Udostępnia obiekt oczekiwany (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 oczekiwania na obiekt 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 oczekiwania na obiekt 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 konstruktora metod asynchronicznych, które zwracają element ValueTask.

PoolingAsyncValueTaskMethodBuilder<TResult>

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

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łączanie się do środowiska docelowego.

Interfejsy

IAsyncStateMachine

Reprezentuje maszyny stanu, które są 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ść uzyskiwania dostępu do wartości, do których odwołuje się obiekt.

ITuple

Definiuje implementację krotki ogólnego przeznaczenia, która umożliwia dostęp do elementów członkowskich wystąpienia krotki bez znajomości podstawowego 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, które definiują szczegóły sposobu implementacji metody.

UnsafeAccessorKind

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

Delegaci

ConditionalWeakTable<TKey,TValue>.CreateValueCallback

Reprezentuje metodę, która tworzy wartość inną niż domyślna, która ma zostać dodana 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 składników zapisywania kompilatora, chociaż kilka jej klas, takich jak InternalsVisibleToAttribute, jest używanych w wielu różnych aplikacjach.