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 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 kompilatora języka w celu skompilowania typu atrybutu, gdy jest używany jako typ zwracany metody asynchronicznej.

AsyncStateMachineAttribute

Wskazuje, czy metoda jest oznaczona za pomocą Async lub modyfikatora 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

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

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 lokacji wywołań. 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łania dynamicznego.

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 składników zapisywania 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

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. Tej klasy nie można dziedziczyć.

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. Tej klasy nie można dziedziczyć.

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 binarną maszynę do obsługi niepowodzeń kontraktów.

CppInlineNamespaceAttribute

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

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 pola lub parametru 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. Tej klasy nie można dziedziczyć.

DefaultDependencyAttribute

Zawiera wskazówkę dla środowiska uruchomieniowego języka wspólnego (CLR) wskazującą, jak prawdopodobne jest załadowanie zależności. Ta klasa jest używana w zestawie zależnym, aby wskazać, jakiej wskazówki należy użyć, gdy element nadrzędny nie określa atrybutu DependencyAttribute. Tej klasy nie można dziedziczyć.

DependencyAttribute

Wskazuje, kiedy zależność ma zostać załadowana przez zestaw odwołujący się. Tej klasy nie można dziedziczyć.

DisablePrivateReflectionAttribute

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

DisableRuntimeMarshallingAttribute

Wyłącza wbudowany podsystem marshalling zarządzany/niezarządzany ś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 na elemencie członkowskim 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).

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. Tej klasy nie można dziedziczyć.

FixedBufferAttribute

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

FormattableStringFactory

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

HasCopySemanticsAttribute

Ta klasa jest przestarzała. Tej klasy nie można dziedziczyć.

IDispatchConstantAttribute

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

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 razy.

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 zostać przekazane 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. Tej klasy nie można dziedziczyć.

IsByRefLikeAttribute

Wskazuje, że struktura jest podobna do byref.

IsByValue

Wskazuje, że zmodyfikowany argument metody powinien być interpretowany jako obiekt przekazywany przez wartość semantyka. Ten modyfikator jest stosowany do typów odwołań. Tej klasy nie można dziedziczyć.

IsConst

Wskazuje, że zmodyfikowany typ ma modyfikator const. Tej klasy nie można dziedziczyć.

IsCopyConstructed

Wskazuje, że każda kopia wartości tego typu musi używać konstruktora kopiowania dostarczonego przez typ. Tej klasy nie można dziedziczyć.

IsExplicitlyDereferenced

Wskazuje, że wskaźnik zarządzany reprezentuje parametr wskaźnika w ramach sygnatury metody. Tej klasy nie można dziedziczyć.

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. Tej klasy nie można dziedziczyć.

IsJitIntrinsic

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

IsLong

Wskazuje, że zmodyfikowana liczba całkowita jest standardową wartością long języka C++. Tej klasy nie można dziedziczyć.

IsPinned

Wskazuje, że zmodyfikowane wystąpienie jest przypięte w pamięci. Tej klasy nie można dziedziczyć.

IsReadOnlyAttribute

Oznacza element programu jako tylko do odczytu.

IsSignUnspecifiedByte

Wskazuje, że modyfikator nie jest ani podpisany, ani niepodpisany. Tej klasy nie można dziedziczyć.

IsUdtReturn

Wskazuje, że zwracany typ jest typem zdefiniowanym przez użytkownika. Tej klasy nie można dziedziczyć.

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. Tej klasy nie można dziedziczyć.

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 WrappedObject jest null. Tej klasy nie można dziedziczyć.

MetadataUpdateOriginalTypeAttribute

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

MethodImplAttribute

Określa szczegóły implementacji metody. Tej klasy nie można dziedziczyć.

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. Tej klasy nie można dziedziczyć.

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.

OverloadResolutionPriorityAttribute

Określa priorytet elementu członkowskiego w rozpoznawaniu przeciążenia. W przypadku nieokreślonego priorytetu domyślnego to 0.

ParamCollectionAttribute

Wskazuje, że metoda zezwala na zmienną liczbę argumentów w wywołaniu.

PreserveBaseOverridesAttribute

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

ReadOnlyCollectionBuilder<T>

Konstruktor kolekcji tylko do odczytu.

ReferenceAssemblyAttribute

Identyfikuje zestaw jako zestaw referencyjny zawierający metadane, ale bez 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. Tej klasy nie można dziedziczyć.

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 opakowować wyjątki, które nie pochodzą z klasy Exception z obiektem RuntimeWrappedException. Tej klasy nie można dziedziczyć.

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. Tej klasy nie można dziedziczyć.

RuntimeOps

Zawiera metody pomocnicze wywoływane z metod generowanych dynamicznie.

RuntimeWrappedException

Opakowuje wyjątek, który nie pochodzi z klasy Exception. Tej klasy nie można dziedziczyć.

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. Tej klasy nie można dziedziczyć.

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. Tej klasy nie można dziedziczyć.

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). Tej klasy nie można dziedziczyć.

StrongBox<T>

Przechowuje odwołanie do wartości.

SuppressIldasmAttribute

Zapobiega Ildasm.exe (dezasembler IL) od dezasemblowania zestawu. Tej klasy nie można dziedziczyć.

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 Type źródłową w innym zestawie.

TypeForwardedToAttribute

Określa docelową 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ć. Tej klasy nie można dziedziczyć.

Struktury

AsyncIteratorMethodBuilder

Reprezentuje konstruktora iteratorów asynchronicznych.

AsyncTaskMethodBuilder

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

AsyncTaskMethodBuilder<TResult>

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

AsyncValueTaskMethodBuilder

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

AsyncValueTaskMethodBuilder<TResult>

Reprezentuje konstruktor metod asynchronicznych, który zwraca ValueTask<TResult>.

AsyncVoidMethodBuilder

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

ConfiguredAsyncDisposable

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

ConfiguredCancelableAsyncEnumerable<T>.Enumerator

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

ConfiguredCancelableAsyncEnumerable<T>

Zapewnia oczekujące asynchroniczne wyliczanie, które 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 oczekiwanego (ConfiguredTaskAwaitable).

ConfiguredTaskAwaitable<TResult>.ConfiguredTaskAwaiter

Udostępnia obiekt awaiter dla obiektu, który można oczekiwać(ConfiguredTaskAwaitable<TResult>).

ConfiguredTaskAwaitable<TResult>

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

ConfiguredValueTaskAwaitable

Zapewnia oczekiwany typ, który włącza skonfigurowane oczekiwania na ValueTask.

ConfiguredValueTaskAwaitable.ConfiguredValueTaskAwaiter

Zapewnia element awaiter dla ConfiguredValueTaskAwaitable.

ConfiguredValueTaskAwaitable<TResult>.ConfiguredValueTaskAwaiter

Zapewnia element awaiter dla ConfiguredValueTaskAwaitable<TResult>.

ConfiguredValueTaskAwaitable<TResult>

Zapewnia oczekiwany typ, który włącza skonfigurowane oczekiwania na ValueTask<TResult>.

DefaultInterpolatedStringHandler

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

PoolingAsyncValueTaskMethodBuilder

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

PoolingAsyncValueTaskMethodBuilder<TResult>

Reprezentuje konstruktor metod asynchronicznych, który zwraca 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

Zapewnia element awaiter dla ValueTask.

ValueTaskAwaiter<TResult>

Zapewnia element awaiter dla ValueTask<TResult>.

YieldAwaitable

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

YieldAwaitable.YieldAwaiter

Zapewnia funkcję awaiter do przełączania się do środowiska docelowego.

Interfejsy

IAsyncStateMachine

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

ICriticalNotifyCompletion

Reprezentuje element awaiter, 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ą uzyskiwanie 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 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 domyślne powiązanie dla zestawu zależnego.

MethodCodeType

Definiuje sposób implementowania metody.

MethodImplOptions

Określa stałe, które definiują szczegóły sposobu implementacji metody.

UnsafeAccessorKind

Określa rodzaj miejsca docelowego, do którego 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 obiektu ConditionalWeakTable<TKey,TValue>.

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.