Bagikan melalui


System.Runtime.CompilerServices Ruang nama

Menyediakan fungsionalitas untuk penulis kompilator yang menggunakan kode terkelola untuk menentukan atribut dalam metadata yang memengaruhi perilaku run-time dari runtime bahasa umum.

Kelas

AccessedThroughPropertyAttribute

Menentukan nama properti yang mengakses bidang yang diatribusikan.

AsyncIteratorStateMachineAttribute

Menunjukkan apakah metode adalah iterator asinkron.

AsyncMethodBuilderAttribute

Menunjukkan jenis penyusun metode asinkron yang harus digunakan oleh pengkompilasi bahasa untuk membangun jenis atribut saat digunakan sebagai jenis pengembalian metode asinkron.

AsyncStateMachineAttribute

Menunjukkan apakah metode ditandai dengan asinkron atau pengubah asinkron .

CallConvCdecl

Menunjukkan bahwa metode harus menggunakan konvensi panggilan Cdecl.

CallConvFastcall

Konvensi panggilan ini tidak didukung dalam versi .NET ini.

CallConvMemberFunction

Menunjukkan bahwa konvensi panggilan yang digunakan adalah varian fungsi anggota.

CallConvStdcall

Menunjukkan bahwa metode harus menggunakan konvensi panggilan StdCall.

CallConvSuppressGCTransition

Menunjukkan bahwa metode harus menekan transisi GC sebagai bagian dari konvensi panggilan.

CallConvSwift

Menunjukkan bahwa metode harus menggunakan konvensi panggilan Swift.

CallConvThiscall

Menunjukkan bahwa metode harus menggunakan konvensi panggilan ThisCall.

CallerArgumentExpressionAttribute

Menunjukkan bahwa parameter menangkap ekspresi yang diteruskan untuk parameter lain sebagai string.

CallerFilePathAttribute

Memungkinkan Anda untuk mendapatkan jalur lengkap file sumber yang berisi pemanggil. Ini adalah jalur file pada saat kompilasi.

CallerLineNumberAttribute

Memungkinkan Anda untuk mendapatkan nomor baris dalam file sumber tempat metode dipanggil.

CallerMemberNameAttribute

Memungkinkan Anda untuk mendapatkan metode atau nama properti pemanggil ke metode .

CallSite

Kelas dasar situs panggilan dinamis. Jenis ini digunakan sebagai jenis parameter untuk target situs dinamis.

CallSite<T>

Jenis situs dinamis.

CallSiteBinder

Kelas yang bertanggung jawab atas pengikatan runtime operasi dinamis di situs panggilan dinamis.

CallSiteHelpers

Kelas yang berisi metode pembantu untuk DLR CallSites.

CallSiteOps

Membuat dan menyimpan aturan pengikatan.

Closure

Mewakili status runtime metode yang dihasilkan secara dinamis.

CollectionBuilderAttribute

Menyediakan fungsionalitas untuk penulis kompilator yang menggunakan kode terkelola untuk menentukan atribut dalam metadata yang memengaruhi perilaku run-time dari runtime bahasa umum.

CompilationRelaxationsAttribute

Mengontrol ketatnya kode yang dihasilkan oleh pengkompilasi just-in-time (JIT) runtime bahasa umum.

CompilerFeatureRequiredAttribute

Menunjukkan bahwa dukungan pengkompilasi untuk fitur tertentu diperlukan untuk lokasi tempat atribut ini diterapkan.

CompilerGeneratedAttribute

Membedakan elemen yang dihasilkan kompilator dari elemen yang dihasilkan pengguna. Kelas ini tidak dapat diwariskan.

CompilerGlobalScopeAttribute

Menunjukkan bahwa kelas harus diperlakukan seolah-olah memiliki cakupan global.

CompilerMarshalOverride

Menunjukkan bahwa instans variabel yang dimodifikasi berbeda dari jenis sebenarnya saat marshaling. Kelas ini tidak dapat diwariskan.

ConditionalWeakTable<TKey,TValue>

Memungkinkan pengkompilasi melampirkan bidang objek secara dinamis ke objek terkelola.

ContractHelper

Menyediakan metode yang digunakan penulis ulang biner untuk menangani kegagalan kontrak.

CppInlineNamespaceAttribute

Menentukan namespace sebaris di C++/CLI.

CreateNewOnMetadataUpdateAttribute

Menunjukkan jenis harus diganti daripada diperbarui saat menerapkan pembaruan metadata.

CustomConstantAttribute

Menentukan nilai konstanta yang dapat dipertahankan pengkompilasi untuk parameter bidang atau metode.

DateTimeConstantAttribute

Mempertahankan konstanta DateTime 8 byte untuk bidang atau parameter.

DebugInfoGenerator

Menghasilkan informasi debug untuk ekspresi lambda di pohon ekspresi.

DecimalConstantAttribute

Menyimpan nilai konstanta Decimal dalam metadata. Kelas ini tidak dapat diwariskan.

DefaultDependencyAttribute

Memberikan petunjuk untuk runtime bahasa umum (CLR) yang menunjukkan seberapa besar kemungkinan dependensi akan dimuat. Kelas ini digunakan dalam rakitan dependen untuk menunjukkan petunjuk apa yang harus digunakan ketika induk tidak menentukan atribut DependencyAttribute. Kelas ini tidak dapat diwariskan.

DependencyAttribute

Menunjukkan kapan dependensi akan dimuat oleh perakitan yang merujuk. Kelas ini tidak dapat diwariskan.

DisablePrivateReflectionAttribute

Menunjukkan bahwa setiap anggota privat yang terkandung dalam jenis perakitan tidak tersedia untuk direfleksikan.

DisableRuntimeMarshallingAttribute

Menonaktifkan subsistem marshalling terkelola/tidak dikelola runtime bawaan untuk P/Pemanggilan, Mendelegasikan jenis, dan pemanggilan penunjuk fungsi yang tidak dikelola.

DiscardableAttribute

Menandai definisi jenis sebagai dapat dibuang.

DynamicAttribute

Menunjukkan bahwa penggunaan Object pada anggota dimaksudkan untuk diperlakukan sebagai jenis yang dikirim secara dinamis.

EnumeratorCancellationAttribute

Memungkinkan pengguna metode asinkron-enumerable untuk menandai parameter yang harus menerima nilai token pembatalan dari GetAsyncEnumerator(CancellationToken).

ExecutionScope

Mewakili status runtime metode yang dihasilkan secara dinamis.

ExtensionAttribute

Menunjukkan bahwa metode adalah metode ekstensi, atau bahwa kelas atau rakitan berisi metode ekstensi.

FixedAddressValueTypeAttribute

Memperbaiki alamat bidang jenis nilai statis sepanjang masa pakainya. Kelas ini tidak dapat diwariskan.

FixedBufferAttribute

Menunjukkan bahwa bidang harus diperlakukan sebagai berisi sejumlah elemen tetap dari jenis primitif yang ditentukan. Kelas ini tidak dapat diwariskan.

FormattableStringFactory

Menyediakan metode statis untuk membuat objek FormattableString dari string format komposit dan argumennya.

HasCopySemanticsAttribute

Kelas ini sudah usang. Kelas ini tidak dapat diwariskan.

IDispatchConstantAttribute

Menunjukkan bahwa nilai default untuk bidang atau parameter yang diatribusikan adalah instans DispatchWrapper, di mana WrappedObjectnull.

IndexerNameAttribute

Menunjukkan nama tempat pengindeks dikenal dalam bahasa pemrograman yang tidak mendukung pengindeks secara langsung.

InlineArrayAttribute

Menunjukkan bahwa penyimpanan instans direplikasi secara berurutan Length kali.

InternalsVisibleToAttribute

Menentukan bahwa jenis yang biasanya hanya terlihat dalam rakitan saat ini terlihat oleh rakitan tertentu.

InterpolatedStringHandlerArgumentAttribute

Menunjukkan argumen mana ke metode yang melibatkan handler string terinterpolasi yang harus diteruskan ke handler tersebut.

InterpolatedStringHandlerAttribute

Menunjukkan jenis yang diatribusikan akan digunakan sebagai handler string terinterpolasi.

IsBoxed

Menunjukkan bahwa jenis referensi yang dimodifikasi adalah jenis nilai dalam kotak. Kelas ini tidak dapat diwariskan.

IsByRefLikeAttribute

Menunjukkan bahwa struktur seperti byref.

IsByValue

Menunjukkan bahwa argumen metode yang dimodifikasi harus ditafsirkan sebagai memiliki semantik objek yang diteruskan oleh nilai. Pengubah ini diterapkan ke jenis referensi. Kelas ini tidak dapat diwariskan.

IsConst

Menunjukkan bahwa jenis yang dimodifikasi memiliki pengubah const. Kelas ini tidak dapat diwariskan.

IsCopyConstructed

Menunjukkan bahwa setiap penyalinan nilai jenis ini harus menggunakan konstruktor salinan yang disediakan oleh jenis . Kelas ini tidak dapat diwariskan.

IsExplicitlyDereferenced

Menunjukkan bahwa pointer terkelola mewakili parameter pointer dalam tanda tangan metode. Kelas ini tidak dapat diwariskan.

IsExternalInit

Dicadangkan untuk digunakan oleh pengkompilasi untuk melacak metadata. Kelas ini tidak boleh digunakan oleh pengembang dalam kode sumber.

IsImplicitlyDereferenced

Menunjukkan bahwa referensi pengumpulan sampah yang dimodifikasi mewakili parameter referensi dalam tanda tangan metode. Kelas ini tidak dapat diwariskan.

IsJitIntrinsic

Menunjukkan bahwa metode yang dimodifikasi adalah nilai intrinsik di mana pengkompilasi just-in-time (JIT) dapat melakukan pembuatan kode khusus. Kelas ini tidak dapat diwariskan.

IsLong

Menunjukkan bahwa bilangan bulat yang dimodifikasi adalah nilai long C++ standar. Kelas ini tidak dapat diwariskan.

IsPinned

Menunjukkan bahwa instans yang dimodifikasi disematkan dalam memori. Kelas ini tidak dapat diwariskan.

IsReadOnlyAttribute

Menandai elemen program sebagai baca-saja.

IsSignUnspecifiedByte

Menunjukkan bahwa pengubah tidak ditandatangani atau tidak ditandatangani. Kelas ini tidak dapat diwariskan.

IsUdtReturn

Menunjukkan bahwa jenis pengembalian adalah jenis yang ditentukan pengguna. Kelas ini tidak dapat diwariskan.

IsUnmanagedAttribute

Dicadangkan untuk digunakan oleh pengkompilasi untuk melacak metadata. Atribut ini tidak boleh digunakan oleh pengembang dalam kode sumber.

IsVolatile

Menandai bidang sebagai volatil. Kelas ini tidak dapat diwariskan.

IteratorStateMachineAttribute

Menunjukkan apakah metode di Visual Basic ditandai dengan pengubah Iterator.

IUnknownConstantAttribute

Menunjukkan bahwa nilai default untuk bidang atau parameter yang diatribusikan adalah instans UnknownWrapper, di mana WrappedObjectnull. Kelas ini tidak dapat diwariskan.

MetadataUpdateOriginalTypeAttribute

Dipancarkan oleh pengkompilasi saat jenis yang ditandai dengan CreateNewOnMetadataUpdateAttribute diperbarui selama sesi isi ulang panas.

MethodImplAttribute

Menentukan detail bagaimana metode diimplementasikan. Kelas ini tidak dapat diwariskan.

ModuleInitializerAttribute

Digunakan untuk menunjukkan kepada pengkompilasi bahwa metode harus dipanggil dalam penginisialisasi modul yang berisi.

NativeCppClassAttribute

Menerapkan metadata ke rakitan yang menunjukkan bahwa jenis adalah jenis yang tidak dikelola. Kelas ini tidak dapat diwariskan.

NullableAttribute

Dicadangkan untuk digunakan oleh pengkompilasi untuk melacak metadata. Atribut ini tidak boleh digunakan oleh pengembang dalam kode sumber.

NullableContextAttribute

Dicadangkan untuk digunakan oleh pengkompilasi untuk melacak metadata. Atribut ini tidak boleh digunakan oleh pengembang dalam kode sumber.

NullablePublicOnlyAttribute

Dicadangkan untuk digunakan oleh pengkompilasi untuk melacak metadata. Atribut ini tidak boleh digunakan oleh pengembang dalam kode sumber.

OverloadResolutionPriorityAttribute

Menentukan prioritas anggota dalam resolusi kelebihan beban. Ketika tidak ditentukan, prioritas defaultnya adalah 0.

ParamCollectionAttribute

Menunjukkan bahwa metode memungkinkan jumlah variabel argumen dalam pemanggilannya.

PreserveBaseOverridesAttribute

Memastikan bahwa setiap panggilan virtual ke metode , baik menggunakan tanda tangan dasar atau tanda tangan turunan dari metode , menjalankan penimpaan yang paling turunan.

ReadOnlyCollectionBuilder<T>

Penyusun untuk koleksi baca saja.

ReferenceAssemblyAttribute

Mengidentifikasi rakitan sebagai rakitan referensi, yang berisi metadata tetapi tidak ada kode yang dapat dieksekusi.

RefSafetyRulesAttribute

Menunjukkan versi bahasa aturan keamanan ref yang digunakan saat modul dikompilasi.

RequiredAttributeAttribute

Menentukan bahwa pengkompilasi impor harus sepenuhnya memahami semantik definisi jenis, atau menolak untuk menggunakannya. Kelas ini tidak dapat diwariskan.

RequiredMemberAttribute

Menentukan bahwa jenis memiliki anggota yang diperlukan atau anggota diperlukan.

RequiresLocationAttribute

Dicadangkan untuk digunakan oleh pengkompilasi untuk melacak metadata. Atribut ini tidak boleh digunakan oleh pengembang dalam kode sumber.

RuleCache<T>

Mewakili cache aturan pengikatan runtime.

RuntimeCompatibilityAttribute

Menentukan apakah akan membungkus pengecualian yang tidak berasal dari kelas Exception dengan objek RuntimeWrappedException. Kelas ini tidak dapat diwariskan.

RuntimeFeature

Menentukan API untuk menentukan apakah fitur tertentu didukung oleh runtime bahasa umum.

RuntimeHelpers

Menyediakan sekumpulan metode dan properti statis yang menyediakan dukungan untuk pengkompilasi. Kelas ini tidak dapat diwariskan.

RuntimeOps

Berisi metode pembantu yang dipanggil dari metode yang dihasilkan secara dinamis.

RuntimeWrappedException

Membungkus pengecualian yang tidak berasal dari kelas Exception. Kelas ini tidak dapat diwariskan.

ScopedRefAttribute

Dicadangkan untuk digunakan oleh pengkompilasi untuk melacak metadata. Atribut ini tidak boleh digunakan oleh pengembang dalam kode sumber.

ScopelessEnumAttribute

Menunjukkan bahwa enumerasi asli tidak memenuhi syarat oleh nama jenis enumerasi. Kelas ini tidak dapat diwariskan.

SkipLocalsInitAttribute

Menunjukkan kepada pengkompilasi bahwa bendera init .locals tidak boleh diatur dalam header metode berlapis saat memancarkan ke metadata.

SpecialNameAttribute

Menunjukkan bahwa jenis atau anggota diperlakukan dengan cara khusus oleh runtime atau alat. Kelas ini tidak dapat diwariskan.

StateMachineAttribute

Memungkinkan Anda menentukan apakah metode adalah metode komputer status.

StringFreezingAttribute

Usang. Membekukan string secara harfiah saat membuat gambar asli menggunakan Ngen.exe (Native Image Generator). Kelas ini tidak dapat diwariskan.

StrongBox<T>

Menyimpan referensi ke nilai.

SuppressIldasmAttribute

Mencegah Ildasm.exe (Pembongkar IL) membongkar rakitan. Kelas ini tidak dapat diwariskan.

SwitchExpressionException

Menunjukkan bahwa ekspresi pengalihan yang tidak lengkap gagal mencocokkan inputnya saat runtime. Pengecualian secara opsional berisi objek yang mewakili nilai yang tidak cocok.

TupleElementNamesAttribute

Menunjukkan bahwa penggunaan tuple nilai pada anggota dimaksudkan untuk diperlakukan sebagai tuple dengan nama elemen.

TypeForwardedFromAttribute

Menentukan Type sumber di rakitan lain.

TypeForwardedToAttribute

Menentukan Type tujuan di rakitan lain.

Unsafe

Berisi fungsionalitas generik tingkat rendah untuk memanipulasi pointer terkelola dan tidak terkelola.

UnsafeAccessorAttribute

Menyediakan akses ke anggota yang tidak dapat diakses dari jenis tertentu.

UnsafeValueTypeAttribute

Menentukan bahwa jenis berisi array tidak terkelola yang mungkin berpotensi meluap. Kelas ini tidak dapat diwariskan.

Struct

AsyncIteratorMethodBuilder

Mewakili pembangun untuk iterator asinkron.

AsyncTaskMethodBuilder

Mewakili penyusun untuk metode asinkron yang mengembalikan tugas.

AsyncTaskMethodBuilder<TResult>

Mewakili penyusun untuk metode asinkron yang mengembalikan tugas dan menyediakan parameter untuk hasilnya.

AsyncValueTaskMethodBuilder

Mewakili penyusun untuk metode asinkron yang mengembalikan ValueTask.

AsyncValueTaskMethodBuilder<TResult>

Mewakili penyusun untuk metode asinkron yang mengembalikan ValueTask<TResult>.

AsyncVoidMethodBuilder

Mewakili penyusun untuk metode asinkron yang tidak mengembalikan nilai.

ConfiguredAsyncDisposable

Menyediakan jenis yang dapat digunakan untuk mengonfigurasi bagaimana menunggu IAsyncDisposable dilakukan.

ConfiguredCancelableAsyncEnumerable<T>.Enumerator

Menyediakan enumerator asinkron yang dapat ditunggu yang memungkinkan perulangan yang dapat dibatalkan dan dikonfigurasi menunggu.

ConfiguredCancelableAsyncEnumerable<T>

Menyediakan asinkron yang dapat ditunggu yang dapat dijumlahkan yang memungkinkan iterasi yang dapat dibatalkan dan dikonfigurasi menunggu.

ConfiguredTaskAwaitable

Menyediakan objek yang dapat ditunggu yang memungkinkan dikonfigurasi menunggu tugas.

ConfiguredTaskAwaitable.ConfiguredTaskAwaiter

Menyediakan awaiter untuk objek (ConfiguredTaskAwaitable) yang dapat ditunggu.

ConfiguredTaskAwaitable<TResult>.ConfiguredTaskAwaiter

Menyediakan air untuk objek yang dapat ditunggu(ConfiguredTaskAwaitable<TResult>).

ConfiguredTaskAwaitable<TResult>

Menyediakan objek yang dapat ditunggu yang memungkinkan dikonfigurasi menunggu tugas.

ConfiguredValueTaskAwaitable

Menyediakan jenis yang dapat ditunggu yang memungkinkan dikonfigurasi menunggu pada ValueTask.

ConfiguredValueTaskAwaitable.ConfiguredValueTaskAwaiter

Menyediakan awaiter untuk ConfiguredValueTaskAwaitable.

ConfiguredValueTaskAwaitable<TResult>.ConfiguredValueTaskAwaiter

Menyediakan awaiter untuk ConfiguredValueTaskAwaitable<TResult>.

ConfiguredValueTaskAwaitable<TResult>

Menyediakan jenis yang dapat ditunggu yang memungkinkan dikonfigurasi menunggu pada ValueTask<TResult>.

DefaultInterpolatedStringHandler

Menyediakan handler yang digunakan oleh pengkompilasi bahasa untuk memproses string terinterpolasi ke dalam instans String.

PoolingAsyncValueTaskMethodBuilder

Mewakili penyusun untuk metode asinkron yang mengembalikan ValueTask.

PoolingAsyncValueTaskMethodBuilder<TResult>

Mewakili penyusun untuk metode asinkron yang mengembalikan ValueTask<TResult>.

TaskAwaiter

Menyediakan objek yang menunggu penyelesaian tugas asinkron.

TaskAwaiter<TResult>

Mewakili objek yang menunggu penyelesaian tugas asinkron dan menyediakan parameter untuk hasilnya.

ValueTaskAwaiter

Menyediakan awaiter untuk ValueTask.

ValueTaskAwaiter<TResult>

Menyediakan awaiter untuk ValueTask<TResult>.

YieldAwaitable

Menyediakan konteks untuk menunggu saat beralih secara asinkron ke lingkungan target.

YieldAwaitable.YieldAwaiter

Menyediakan awaiter untuk beralih ke lingkungan target.

Antarmuka

IAsyncStateMachine

Mewakili komputer status yang dihasilkan untuk metode asinkron. Jenis ini hanya ditujukan untuk penggunaan pengkompilasi.

ICriticalNotifyCompletion

Mewakili penantian yang menjadwalkan kelanjutan ketika operasi tunggu selesai.

INotifyCompletion

Mewakili operasi yang menjadwalkan kelanjutan ketika selesai.

IRuntimeVariables

Mewakili nilai variabel run-time.

IStrongBox

Menentukan properti untuk mengakses nilai yang dirujuk objek.

ITuple

Mendefinisikan implementasi Tuple tujuan umum yang memungkinkan akses ke anggota instans Tuple tanpa mengetahui jenis Tuple yang mendasar.

Enum

CompilationRelaxations

Menentukan parameter yang mengontrol ketatnya kode yang dihasilkan oleh kompilator just-in-time (JIT) runtime bahasa umum.

LoadHint

Menentukan pengikatan default pilihan untuk rakitan dependen.

MethodCodeType

Menentukan bagaimana metode diimplementasikan.

MethodImplOptions

Menentukan konstanta yang menentukan detail bagaimana metode diimplementasikan.

UnsafeAccessorKind

Menentukan jenis target tempat UnsafeAccessorAttribute menyediakan akses.

Delegasikan

ConditionalWeakTable<TKey,TValue>.CreateValueCallback

Mewakili metode yang membuat nilai non-default untuk ditambahkan sebagai bagian dari pasangan kunci/nilai ke objek ConditionalWeakTable<TKey,TValue>.

RuntimeHelpers.CleanupCode

Mewakili metode yang akan dijalankan ketika pengecualian terjadi.

RuntimeHelpers.TryCode

Mewakili delegasi ke kode yang harus dijalankan dalam blok coba.

Keterangan

Namespace ini terutama untuk penulis kompilator, meskipun beberapa kelasnya, seperti InternalsVisibleToAttribute, digunakan dalam berbagai aplikasi.