INamespaceSymbol 介面
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
代表命名空間。
public interface class INamespaceSymbol : IEquatable<Microsoft::CodeAnalysis::ISymbol ^>, Microsoft::CodeAnalysis::INamespaceOrTypeSymbol
public interface INamespaceSymbol : IEquatable<Microsoft.CodeAnalysis.ISymbol>, Microsoft.CodeAnalysis.INamespaceOrTypeSymbol
type INamespaceSymbol = interface
interface INamespaceOrTypeSymbol
interface ISymbol
interface IEquatable<ISymbol>
Public Interface INamespaceSymbol
Implements IEquatable(Of ISymbol), INamespaceOrTypeSymbol
- 實作
備註
此介面會保留供其相關聯的 API 實作使用。 我們保留未來變更它的權利。
屬性
CanBeReferencedByName |
如果此符號可以在程式碼中依其名稱參考,則傳回 true。 (繼承來源 ISymbol) |
ConstituentNamespaces |
如果命名空間是元件或編譯命名空間,則可能是由合併在一起的多個命名空間所組成。 如果是,則 ConstituentNamespaces 會傳回所有已合併的命名空間。 如果未合併此命名空間,則傳回只包含此命名空間的陣列。 |
ContainingAssembly |
IAssemblySymbol取得包含元件的 。 如果符號在多個元件之間共用,則傳回 null。 (繼承來源 ISymbol) |
ContainingCompilation |
包含編譯命名空間編譯的 。 |
ContainingModule |
IModuleSymbol取得包含模組的 。 如果符號在多個模組之間共用,則傳回 null。 (繼承來源 ISymbol) |
ContainingNamespace |
INamespaceSymbol取得最接近封入命名空間的 。 如果符號未包含在命名空間中,則傳回 null。 (繼承來源 ISymbol) |
ContainingSymbol |
ISymbol取得立即包含符號之 的 。 (繼承來源 ISymbol) |
ContainingType |
INamedTypeSymbol取得包含型別的 。 如果符號未包含在類型內,則傳回 null。 (繼承來源 ISymbol) |
DeclaredAccessibility |
取得 , Accessibility 表示符號的宣告協助工具。 如果未宣告協助工具,則會傳回 NotApplicable。 (繼承來源 ISymbol) |
DeclaringSyntaxReferences |
取得語法節點 () 此符號在來源中宣告的位置。 例如,某些符號 (,部分類別) 可能會定義在多個位置。 只有當符號在原始程式碼中宣告,而且未隱含宣告時,此屬性才應該傳回一或多個語法節點, (請參閱 IsImplicitlyDeclared 屬性) 。 請注意,針對命名空間符號,宣告語法可能會宣告巢狀命名空間。 例如,「namespace N1」 中 N1 的宣告語法節點。N2 {...}」 是 N1 的整個 NamespaceDeclarationSyntax。N2. 針對全域命名空間,宣告語法會是 CompilationUnitSyntax。 (繼承來源 ISymbol) |
HasUnsupportedMetadata |
表示此符號使用語言無法支援的中繼資料。 範例包括:
例如,這與未參考之元件中定義的中繼資料符號參考不同。 傳回 true 的符號永遠無法成功使用,因此不應該出現在任何 IDE 功能中。 這是針對中繼資料符號所設定,如下所示:
|
IsAbstract |
取得值,指出符號是否為抽象。 (繼承來源 ISymbol) |
IsDefinition |
取得值,指出符號是否為原始定義。 如果符號衍生自另一個符號,則傳回 false,方法是依實例的型別替代。 (繼承來源 ISymbol) |
IsExtern |
取得值,指出符號是否在外部定義。 (繼承來源 ISymbol) |
IsGlobalNamespace |
傳回這個命名空間是否為位於所有命名空間根目錄的未命名全域命名空間。 |
IsImplicitlyDeclared |
如果編譯器自動建立此符號,而且沒有明確的對應原始程式碼宣告,則傳回 true。 (繼承來源 ISymbol) |
IsNamespace |
如果這個符號是命名空間,則傳回 true。 如果不是命名空間,它必須是類型。 (繼承來源 INamespaceOrTypeSymbol) |
IsOverride |
取得值,指出符號是否為基類符號的覆寫。 (繼承來源 ISymbol) |
IsSealed |
取得值,指出符號是否密封。 (繼承來源 ISymbol) |
IsStatic |
取得值,指出符號是否為靜態。 (繼承來源 ISymbol) |
IsType |
如果這個符號是類型,則傳回 true。 如果不是類型,它必須是命名空間。 (繼承來源 INamespaceOrTypeSymbol) |
IsVirtual |
取得值,指出符號是否為虛擬。 (繼承來源 ISymbol) |
Kind |
取得 , SymbolKind 表示其為何種符號。 (繼承來源 ISymbol) |
Language |
取得來來源語言 (「C#」 或 「Visual Basic」) 。 (繼承來源 ISymbol) |
Locations |
取得最初在來源或中繼資料中定義符號的位置。 例如,某些符號 (,部分類別) 可能會定義在多個位置。 (繼承來源 ISymbol) |
MetadataName |
取得出現在中繼資料中的符號名稱。 在大部分情況下,這與 Name 屬性相同,但有下列例外狀況:
|
MetadataToken |
取得與此符號相關聯的元資料標記,如果未從中繼資料載入符號,則為 0。 (繼承來源 ISymbol) |
Name |
取得符號名稱。 如果未命名,則傳回空字串。 (繼承來源 ISymbol) |
NamespaceKind |
命名空間類型:模組、元件或編譯。 模組命名空間只包含共用相同命名空間名稱之包含模組的成員。 元件命名空間包含包含共用相同命名空間名稱之元件中所有模組的成員。 編譯命名空間包含來自來源或參考中繼資料的所有成員, (共用相同命名空間名稱的元件和模組) 。 |
OriginalDefinition |
ISymbol取得符號原始定義的 。 如果此符號衍生自另一個符號,則根據實例的型別替代,這會取得原始符號,如來源或中繼資料中所定義。 (繼承來源 ISymbol) |
方法
擴充方法
GetModuleMembers(INamespaceSymbol) |
取得命名空間中的所有模組成員。 |
GetModuleMembers(INamespaceSymbol, String) |
取得指定命名空間中的所有模組成員。 |
IsMustOverride(ISymbol) |
代表命名空間。 |
IsNotOverridable(ISymbol) |
代表命名空間。 |
IsOverridable(ISymbol) |
代表命名空間。 |
IsOverrides(ISymbol) |
代表命名空間。 |
IsShared(ISymbol) |
判斷符號是否為共用。 |