Bagikan melalui


ITypeSymbol Antarmuka

Definisi

Mewakili jenis.

public interface class ITypeSymbol : IEquatable<Microsoft::CodeAnalysis::ISymbol ^>, Microsoft::CodeAnalysis::INamespaceOrTypeSymbol
public interface ITypeSymbol : IEquatable<Microsoft.CodeAnalysis.ISymbol>, Microsoft.CodeAnalysis.INamespaceOrTypeSymbol
type ITypeSymbol = interface
    interface INamespaceOrTypeSymbol
    interface ISymbol
    interface IEquatable<ISymbol>
Public Interface ITypeSymbol
Implements IEquatable(Of ISymbol), INamespaceOrTypeSymbol
Turunan
Penerapan

Keterangan

Antarmuka ini disediakan untuk implementasi oleh API terkait. Kami berhak mengubahnya di masa mendatang.

Properti

AllInterfaces

Daftar semua antarmuka yang jenis ini adalah subjenis yang dideklarasikan, tidak termasuk jenis ini sendiri. Ini termasuk semua antarmuka dasar yang dideklarasikan, semua antarmuka dasar yang dideklarasikan dari jenis dasar, dan semua antarmuka dasar yang dideklarasikan dari hasil tersebut (secara rekursif). Ini juga merupakan set antarmuka yang efektif dari parameter jenis. Setiap hasil muncul tepat sekali dalam daftar. Daftar ini diurutkan secara topologis berdasarkan hubungan pewarisan: jika antarmuka jenis A memperluas jenis antarmuka B, maka A mendahului B dalam daftar. Ini tidak sama dengan "semua antarmuka yang jenis ini adalah subjenis yang tepat" karena tidak mempertimbangkan varians: AllInterfaces untuk string IEnumerable<tidak akan menyertakan objek> IEnumerable<.>

BaseType

Tipe dasar yang dideklarasikan dari jenis ini, atau null. Jenis objek, jenis antarmuka, dan jenis penunjuk tidak memiliki jenis dasar. Jenis dasar parameter jenis adalah kelas dasar yang efektif.

CanBeReferencedByName

Mengembalikan true jika simbol ini dapat dirujuk dengan namanya dalam kode.

(Diperoleh dari ISymbol)
ContainingAssembly

IAssemblySymbol Mendapatkan untuk rakitan yang berisi. Mengembalikan null jika simbol dibagikan di beberapa rakitan.

(Diperoleh dari ISymbol)
ContainingModule

IModuleSymbol Mendapatkan untuk modul yang berisi. Mengembalikan null jika simbol dibagikan di beberapa modul.

(Diperoleh dari ISymbol)
ContainingNamespace

INamespaceSymbol Mendapatkan untuk namespace lampiran terdekat. Mengembalikan null jika simbol tidak terkandung dalam namespace.

(Diperoleh dari ISymbol)
ContainingSymbol

ISymbol Mendapatkan untuk simbol yang segera berisi.

(Diperoleh dari ISymbol)
ContainingType

INamedTypeSymbol Mendapatkan untuk jenis yang berisi. Mengembalikan null jika simbol tidak terkandung dalam tipe.

(Diperoleh dari ISymbol)
DeclaredAccessibility

Mendapatkan indikasi Accessibility aksesibilitas yang dideklarasikan untuk simbol tersebut. Mengembalikan NotApplicable jika tidak ada aksesibilitas yang dinyatakan.

(Diperoleh dari ISymbol)
DeclaringSyntaxReferences

Dapatkan simpul sintaks di mana simbol ini dideklarasikan dalam sumber. Beberapa simbol (misalnya, kelas parsial) dapat didefinisikan di lebih dari satu lokasi. Properti ini harus mengembalikan satu atau beberapa simpul sintaksis hanya jika simbol dideklarasikan dalam kode sumber dan juga tidak dideklarasikan secara implisit (lihat properti IsImplicitlyDeclared).

Perhatikan bahwa untuk simbol namespace, sintaks yang mendeklarasikan mungkin mendeklarasikan namespace berlapis. Misalnya, simpul sintaks yang mendeklarasikan untuk N1 di "namespace N1. N2 {...}" adalah seluruh NamespaceDeclarationSyntax untuk N1. N2. Untuk namespace layanan global, sintaks yang mendeklarasikan akan menjadi CompilationUnitSyntax.

(Diperoleh dari ISymbol)
HasUnsupportedMetadata

Menunjukkan bahwa simbol ini menggunakan metadata yang tidak dapat didukung oleh bahasa.

Contoh meliputi:

  • Jenis penunjuk di VB
  • Tipe pengembalian ByRef
  • Pengubah kustom yang diperlukan

Ini dibedakan dari, misalnya, referensi ke simbol metadata yang didefinisikan dalam rakitan yang tidak direferensikan. Simbol di mana ini mengembalikan true tidak pernah berhasil digunakan, dan dengan demikian tidak boleh muncul di fitur IDE apa pun.

Ini diatur untuk simbol metadata, sebagai berikut:

  • Jenis - jika jenis tidak didukung (misalnya, jenis penunjuk)
  • Metode - parameter atau jenis pengembalian tidak didukung
  • Bidang - tipe tidak didukung
  • Peristiwa - jenis tidak didukung
  • Properti - jenis tidak didukung
  • Parameter - jenis tidak didukung

(Diperoleh dari ISymbol)
Interfaces

Mendapatkan set antarmuka yang diterapkan langsung oleh jenis ini. Set ini tidak termasuk antarmuka yang merupakan antarmuka dasar antarmuka yang diimplementasikan secara langsung. Ini memang termasuk antarmuka yang dinyatakan sebagai batasan pada parameter jenis.

IsAbstract

Mendapatkan nilai yang menunjukkan apakah simbol tersebut abstrak.

(Diperoleh dari ISymbol)
IsAnonymousType

Apakah ini simbol untuk jenis anonim (termasuk delegasi VB anonim).

IsDefinition

Mendapatkan nilai yang menunjukkan apakah simbol adalah definisi asli. Mengembalikan false jika simbol berasal dari simbol lain, berdasarkan jenis substitusi misalnya.

(Diperoleh dari ISymbol)
IsExtern

Mendapatkan nilai yang menunjukkan apakah simbol didefinisikan secara eksternal.

(Diperoleh dari ISymbol)
IsImplicitlyDeclared

Mengembalikan true jika simbol ini secara otomatis dibuat oleh pengkompilasi, dan tidak memiliki deklarasi kode sumber yang sesuai secara eksplisit.

(Diperoleh dari ISymbol)
IsNamespace

Mengembalikan true jika simbol ini adalah namespace. Jika bukan namespace layanan, itu harus berupa jenis.

(Diperoleh dari INamespaceOrTypeSymbol)
IsNativeIntegerType

True jika jenis mewakili bilangan bulat asli. Dalam C#, jenis yang diwakili oleh kata kunci bahasa 'nint' dan 'nuint'.

IsOverride

Mendapatkan nilai yang menunjukkan apakah simbol adalah penimpaan simbol kelas dasar.

(Diperoleh dari ISymbol)
IsReadOnly

Benar jika jenisnya adalah readonly.

IsRecord

Untuk simbol sumber, benar jika jenisnya adalah rekaman. Untuk simbol metadata, benar jika jenisnya adalah rekaman dan jenis referensi.

IsReferenceType

Benar jika jenis ini diketahui sebagai jenis referensi. Tidak pernah terjadi dan IsReferenceTypeIsValueType keduanya mengembalikan true. Namun, untuk parameter jenis yang tidak dibatasi, IsReferenceType dan IsValueType keduanya akan mengembalikan false.

IsRefLikeType

Benar jika jenisnya seperti ref, yang berarti mengikuti aturan yang mirip dengan variabel CLR by-ref. False jika jenisnya tidak seperti ref atau jika bahasa tidak memiliki konsep jenis seperti ref.

IsSealed

Mendapatkan nilai yang menunjukkan apakah simbol disegel.

(Diperoleh dari ISymbol)
IsStatic

Mendapatkan nilai yang menunjukkan apakah simbol statis.

(Diperoleh dari ISymbol)
IsTupleType

Apakah ini simbol untuk tuple .

IsType

Mengembalikan true jika simbol ini adalah tipe. Jika bukan jenis, itu harus berupa namespace layanan.

(Diperoleh dari INamespaceOrTypeSymbol)
IsUnmanagedType

Benar jika jenisnya tidak dikelola sesuai dengan aturan bahasa. False jika dikelola atau jika bahasa tidak memiliki konsep jenis yang tidak dikelola.

IsValueType

Benar jika jenis ini diketahui sebagai jenis nilai. Tidak pernah terjadi dan IsReferenceTypeIsValueType keduanya mengembalikan true. Namun, untuk parameter jenis yang tidak dibatasi, IsReferenceType dan IsValueType keduanya akan mengembalikan false.

IsVirtual

Mendapatkan nilai yang menunjukkan apakah simbol tersebut virtual.

(Diperoleh dari ISymbol)
Kind

SymbolKind Mendapat indikasi simbol seperti apa itu.

(Diperoleh dari ISymbol)
Language

Mendapatkan bahasa sumber ("C#" atau "Visual Basic").

(Diperoleh dari ISymbol)
Locations

Mendapatkan lokasi di mana simbol awalnya ditentukan, baik di sumber atau metadata. Beberapa simbol (misalnya, kelas parsial) dapat didefinisikan di lebih dari satu lokasi.

(Diperoleh dari ISymbol)
MetadataName

Mendapatkan nama simbol seperti yang muncul dalam metadata. Sebagian besar waktu, ini sama dengan properti Nama, dengan pengecualian berikut:

  1. Nama metadata jenis generik mencakup akhiran "'1", "'2" dll yang menunjukkan jumlah parameter jenis (tidak termasuk, namun, nama yang berisi jenis atau namespace).
  2. Nama metadata nama antarmuka eksplisit memiliki spasi yang dihapus, dibandingkan dengan properti nama.
  3. Panjang nama dibatasi untuk tidak melebihi batasan metadata.
(Diperoleh dari ISymbol)
MetadataToken

Mendapatkan token metadata yang terkait dengan simbol ini, atau 0 jika simbol tidak dimuat dari metadata.

(Diperoleh dari ISymbol)
Name

Mendapatkan nama simbol. Mengembalikan string kosong jika tidak disebutkan namanya.

(Diperoleh dari ISymbol)
NullableAnnotation

Anotasi yang dapat diubah ke null yang terkait dengan jenis, atau None jika tidak ada.

OriginalDefinition

Definisi asli dari simbol ini. Jika simbol ini dibangun dari simbol lain berdasarkan penggantian jenis, maka OriginalDefinition mendapatkan simbol asli seperti yang didefinisikan dalam sumber atau metadata.

SpecialType

Nilai enumerasi yang mengidentifikasi jenis 'khusus' tertentu seperti Object. Mengembalikan None jika jenisnya tidak khusus.

TypeKind

Nilai enumerasi yang mengidentifikasi apakah jenis ini adalah array, pointer, enum, dan sebagainya.

Metode

Accept(SymbolVisitor)

Mewakili jenis.

(Diperoleh dari ISymbol)
Accept<TArgument,TResult>(SymbolVisitor<TArgument,TResult>, TArgument)

Mewakili jenis.

(Diperoleh dari ISymbol)
Accept<TResult>(SymbolVisitor<TResult>)

Mewakili jenis.

(Diperoleh dari ISymbol)
Equals(ISymbol, SymbolEqualityComparer)

Menentukan apakah simbol ini sama dengan simbol lain, sesuai dengan aturan yang disediakan SymbolEqualityComparer

(Diperoleh dari ISymbol)
FindImplementationForInterfaceMember(ISymbol)

Mengembalikan simbol terkait dalam jenis ini atau jenis dasar yang mengimplementasikan interfaceMember (baik secara implisit atau eksplisit), atau null jika tidak ada simbol seperti itu (yang mungkin karena jenis ini tidak mengimplementasikan kontainer interfaceMember, atau jenis ini tidak menyediakan anggota yang berhasil mengimplementasikan interfaceMember).

GetAttributes()

Mendapatkan atribut untuk simbol . Mengembalikan kosong IEnumerable<T> jika tidak ada atribut.

(Diperoleh dari ISymbol)
GetDocumentationCommentId()

Mengembalikan ID Komentar Dokumentasi untuk simbol, atau null jika simbol tidak mendukung komentar dokumentasi.

(Diperoleh dari ISymbol)
GetDocumentationCommentXml(CultureInfo, Boolean, CancellationToken)

Mendapatkan XML (sebagai teks) untuk komentar yang terkait dengan simbol .

(Diperoleh dari ISymbol)
GetMembers()

Dapatkan semua anggota simbol ini.

(Diperoleh dari INamespaceOrTypeSymbol)
GetMembers(String)

Dapatkan semua anggota simbol ini yang memiliki nama tertentu.

(Diperoleh dari INamespaceOrTypeSymbol)
GetTypeMembers()

Dapatkan semua anggota simbol ini yang merupakan jenis.

(Diperoleh dari INamespaceOrTypeSymbol)
GetTypeMembers(String)

Dapatkan semua anggota simbol ini yang merupakan jenis yang memiliki nama tertentu, dari aritas apa pun.

(Diperoleh dari INamespaceOrTypeSymbol)
GetTypeMembers(String, Int32)

Dapatkan semua anggota simbol ini yang merupakan jenis yang memiliki nama dan aritas tertentu

(Diperoleh dari INamespaceOrTypeSymbol)
ToDisplayParts(NullableFlowState, SymbolDisplayFormat)

Mengonversi simbol menjadi array bagian string, yang masing-masing memiliki jenis. Berguna untuk mewarnai string tampilan.

ToDisplayParts(SymbolDisplayFormat)

Mengonversi simbol menjadi array bagian string, yang masing-masing memiliki jenis. Berguna untuk mewarnai string tampilan.

(Diperoleh dari ISymbol)
ToDisplayString(NullableFlowState, SymbolDisplayFormat)

ITypeSymbol Mengonversi dan status alur yang dapat diubah ke representasi string.

ToDisplayString(SymbolDisplayFormat)

Mengonversi simbol menjadi representasi string.

(Diperoleh dari ISymbol)
ToMinimalDisplayParts(SemanticModel, Int32, SymbolDisplayFormat)

Mengonversi simbol menjadi array bagian string, yang masing-masing memiliki jenis. Dapat disesuaikan dengan lokasi tertentu dalam kode sumber. Berguna untuk mewarnai string tampilan.

(Diperoleh dari ISymbol)
ToMinimalDisplayParts(SemanticModel, NullableFlowState, Int32, SymbolDisplayFormat)

Mengonversi simbol menjadi array bagian string, yang masing-masing memiliki jenis. Dapat disesuaikan dengan lokasi tertentu dalam kode sumber. Berguna untuk mewarnai string tampilan.

ToMinimalDisplayString(SemanticModel, Int32, SymbolDisplayFormat)

Mengonversi simbol menjadi string yang dapat ditampilkan kepada pengguna. Dapat disesuaikan dengan lokasi tertentu dalam kode sumber.

(Diperoleh dari ISymbol)
ToMinimalDisplayString(SemanticModel, NullableFlowState, Int32, SymbolDisplayFormat)

Mengonversi simbol menjadi string yang dapat ditampilkan kepada pengguna. Dapat disesuaikan dengan lokasi tertentu dalam kode sumber.

WithNullableAnnotation(NullableAnnotation)

Mengembalikan jenis yang sama dengan jenis ini tetapi dengan anotasi nullable yang diberikan.

Metode Ekstensi

IsMustOverride(ISymbol)

Mewakili jenis.

IsNotOverridable(ISymbol)

Mewakili jenis.

IsOverridable(ISymbol)

Mewakili jenis.

IsOverrides(ISymbol)

Mewakili jenis.

IsShared(ISymbol)

Menentukan apakah simbol dibagikan.

Berlaku untuk