Поделиться через


ISourceAssemblySymbol Интерфейс

Определение

Представляет символ исходной сборки, предоставляемый компилятором.

public interface class ISourceAssemblySymbol : IEquatable<Microsoft::CodeAnalysis::ISymbol ^>, Microsoft::CodeAnalysis::IAssemblySymbol
public interface ISourceAssemblySymbol : IEquatable<Microsoft.CodeAnalysis.ISymbol>, Microsoft.CodeAnalysis.IAssemblySymbol
type ISourceAssemblySymbol = interface
    interface IAssemblySymbol
    interface ISymbol
    interface IEquatable<ISymbol>
Public Interface ISourceAssemblySymbol
Implements IAssemblySymbol, IEquatable(Of ISymbol)
Реализации

Комментарии

Этот интерфейс зарезервирован для реализации связанными API. Мы оставляем за собой право изменить его в будущем.

Свойства

CanBeReferencedByName

Возвращает значение true, если на этот символ можно ссылаться по его имени в коде.

(Унаследовано от ISymbol)
Compilation

Представляет символ исходной сборки, предоставляемый компилятором.

ContainingAssembly

IAssemblySymbol Возвращает объект для содержащей сборки. Возвращает значение NULL, если символ является общим для нескольких сборок.

(Унаследовано от ISymbol)
ContainingModule

IModuleSymbol Возвращает объект для содержащего модуля. Возвращает значение NULL, если символ совместно используется в нескольких модулях.

(Унаследовано от ISymbol)
ContainingNamespace

INamespaceSymbol Возвращает ближайшее включающее пространство имен. Возвращает значение NULL, если символ не содержится в пространстве имен.

(Унаследовано от ISymbol)
ContainingSymbol

ISymbol Возвращает значение для немедленно содержащего символа.

(Унаследовано от ISymbol)
ContainingType

INamedTypeSymbol Возвращает значение для содержащего типа. Возвращает значение NULL, если символ не содержится в типе.

(Унаследовано от ISymbol)
DeclaredAccessibility

Accessibility Возвращает значение, указывающее объявленную доступность для символа. Возвращает NotApplicable, если специальные возможности не объявлены.

(Унаследовано от ISymbol)
DeclaringSyntaxReferences

Получите узлы синтаксиса, в которых этот символ был объявлен в источнике. Некоторые символы (например, разделяемые классы) могут быть определены в нескольких расположениях. Это свойство должно возвращать один или несколько синтаксических узлов только в том случае, если символ был объявлен в исходном коде, а также не был неявно объявлен (см. свойство IsImplicitlyDeclared).

Обратите внимание, что для символа пространства имен декларативный синтаксис может объявлять вложенное пространство имен. Например, декларативный узел синтаксиса для N1 в пространстве имен N1. N2 {...}" — это все пространство именDeclarationSyntax для N1. N2. Для глобального пространства имен декларативный синтаксис будет значением CompilationUnitSyntax.

(Унаследовано от ISymbol)
GlobalNamespace

Возвращает объединенное корневое пространство имен, содержащее все пространства имен и типы, определенные в модулях этой сборки. Если в этой сборке есть только один модуль, это свойство просто возвращает globalNamespace этого модуля.

(Унаследовано от IAssemblySymbol)
HasUnsupportedMetadata

Указывает, что этот символ использует метаданные, которые не могут поддерживаться языком.

Примеры приведены ниже.

  • Типы указателей в VB
  • Тип возвращаемого значения ByRef
  • Обязательные настраиваемые модификаторы

Это отличается от ссылок на символы метаданных, определенные в сборках, на которые не ссылались. Символы, в которых возвращает значение true, никогда не могут использоваться успешно, поэтому никогда не должны отображаться в любой функции интегрированной среды разработки.

Этот параметр задается для символов метаданных следующим образом:

  • Тип — если тип не поддерживается (например, тип указателя)
  • Метод — параметр или тип возвращаемого значения не поддерживается
  • Поле — тип не поддерживается
  • Событие — тип не поддерживается
  • Свойство — тип не поддерживается
  • Параметр — тип не поддерживается

(Унаследовано от ISymbol)
Identity

Возвращает имя этой сборки.

(Унаследовано от IAssemblySymbol)
IsAbstract

Возвращает значение, указывающее, является ли символ абстрактным.

(Унаследовано от ISymbol)
IsDefinition

Возвращает значение, указывающее, является ли символ исходным определением. Возвращает значение false, если символ является производным от другого символа, например подстановкой типов.

(Унаследовано от ISymbol)
IsExtern

Возвращает значение, указывающее, определен ли символ извне.

(Унаследовано от ISymbol)
IsImplicitlyDeclared

Возвращает значение true, если этот символ был автоматически создан компилятором и не имеет явного объявления исходного кода.

(Унаследовано от ISymbol)
IsInteractive

Значение true, если сборка содержит интерактивный код.

(Унаследовано от IAssemblySymbol)
IsOverride

Возвращает значение, указывающее, является ли символ переопределением символа базового класса.

(Унаследовано от ISymbol)
IsSealed

Возвращает значение, указывающее, запечатывается ли символ.

(Унаследовано от ISymbol)
IsStatic

Возвращает значение, указывающее, является ли символ статическим.

(Унаследовано от ISymbol)
IsVirtual

Возвращает значение, указывающее, является ли символ виртуальным.

(Унаследовано от ISymbol)
Kind

Возвращает значение, SymbolKind указывающее, какой символ он имеет.

(Унаследовано от ISymbol)
Language

Возвращает исходный язык ("C#" или "Visual Basic").

(Унаследовано от ISymbol)
Locations

Возвращает расположения, в которых символ был первоначально определен в источнике или метаданных. Некоторые символы (например, разделяемые классы) могут быть определены в нескольких расположениях.

(Унаследовано от ISymbol)
MetadataName

Возвращает имя символа, отображаемого в метаданных. В большинстве случаев это то же самое, что и свойство Name со следующими исключениями:

  1. Имя метаданных универсальных типов включает суффикс "1", "'2" и т. д., указывающий количество параметров типа (он не включает, однако, имена содержащих типы или пространства имен).
  2. Имена метаданных явных имен интерфейсов удаляют пробелы по сравнению со свойством name.
  3. Длина имен ограничена ограничениями метаданных.
(Унаследовано от ISymbol)
MetadataToken

Возвращает маркер метаданных, связанный с этим символом, или значение 0, если символ не загружен из метаданных.

(Унаследовано от ISymbol)
MightContainExtensionMethods

Определяет, может ли сборка содержать методы расширения. Если значение равно false, сборка не содержит методы расширения.

(Унаследовано от IAssemblySymbol)
Modules

Возвращает модули в этой сборке. (Должно быть по крайней мере одно.) Первый — основной модуль, содержащий манифест сборки.

(Унаследовано от IAssemblySymbol)
Name

Получает имя символа. Возвращает пустую строку, если имя не указано.

(Унаследовано от ISymbol)
NamespaceNames

Возвращает набор имен пространств имен из этой сборки.

(Унаследовано от IAssemblySymbol)
OriginalDefinition

ISymbol Возвращает исходное определение символа. Если этот символ является производным от другого символа, например подстановкой типов, он получает исходный символ, как он был определен в источнике или метаданных.

(Унаследовано от ISymbol)
TypeNames

Возвращает набор идентификаторов типов из этой сборки.

(Унаследовано от IAssemblySymbol)

Методы

Accept(SymbolVisitor)

Представляет символ исходной сборки, предоставляемый компилятором.

(Унаследовано от ISymbol)
Accept<TArgument,TResult>(SymbolVisitor<TArgument,TResult>, TArgument)

Представляет символ исходной сборки, предоставляемый компилятором.

(Унаследовано от ISymbol)
Accept<TResult>(SymbolVisitor<TResult>)

Представляет символ исходной сборки, предоставляемый компилятором.

(Унаследовано от ISymbol)
Equals(ISymbol, SymbolEqualityComparer)

Определяет, равен ли этот символ другому, в соответствии с правилами предоставленного SymbolEqualityComparer

(Унаследовано от ISymbol)
GetAttributes()

Возвращает атрибуты для символа. Возвращает пустое IEnumerable<T> значение, если атрибутов нет.

(Унаследовано от ISymbol)
GetDocumentationCommentId()

Возвращает идентификатор комментария документации для символа или значение NULL, если символ не поддерживает комментарии документации.

(Унаследовано от ISymbol)
GetDocumentationCommentXml(CultureInfo, Boolean, CancellationToken)

Возвращает XML-код (в виде текста) для комментария, связанного с символом.

(Унаследовано от ISymbol)
GetForwardedTypes()

Возвращает символы типа для типов верхнего уровня (не вложенных), пересылаемых этой сборкой.

(Унаследовано от IAssemblySymbol)
GetMetadata()

Если этот символ представляет сборку метаданных, возвращает базовую AssemblyMetadata.

В противном случае возвращается null.

(Унаследовано от IAssemblySymbol)
GetTypeByMetadataName(String)

Подстановка типа в сборке с помощью канонического имени метаданных CLR типа.

(Унаследовано от IAssemblySymbol)
GivesAccessTo(IAssemblySymbol)

Возвращает значение, указывающее, предоставляет toAssembly ли эта сборка доступ к внутренним символам.

(Унаследовано от IAssemblySymbol)
ResolveForwardedType(String)

Возвращает символ типа для перенаправленного типа на основе канонического имени метаданных CLR. Имя должно ссылаться на не вложенный тип. Если тип с этим именем не пересылается, возвращается значение NULL.

(Унаследовано от IAssemblySymbol)
ToDisplayParts(SymbolDisplayFormat)

Преобразуйте символ в массив строковых частей, каждый из которых имеет вид. Полезно для раскраски отображаемой строки.

(Унаследовано от ISymbol)
ToDisplayString(SymbolDisplayFormat)

Преобразует символ в строковое представление.

(Унаследовано от ISymbol)
ToMinimalDisplayParts(SemanticModel, Int32, SymbolDisplayFormat)

Преобразуйте символ в массив строковых частей, каждый из которых имеет вид. Может быть адаптировано к определенному расположению в исходном коде. Полезно для раскраски отображаемой строки.

(Унаследовано от ISymbol)
ToMinimalDisplayString(SemanticModel, Int32, SymbolDisplayFormat)

Преобразуйте символ в строку, которую можно отобразить пользователю. Может быть адаптировано к определенному расположению в исходном коде.

(Унаследовано от ISymbol)

Методы расширения

IsMustOverride(ISymbol)

Представляет символ исходной сборки, предоставляемый компилятором.

IsNotOverridable(ISymbol)

Представляет символ исходной сборки, предоставляемый компилятором.

IsOverridable(ISymbol)

Представляет символ исходной сборки, предоставляемый компилятором.

IsOverrides(ISymbol)

Представляет символ исходной сборки, предоставляемый компилятором.

IsShared(ISymbol)

Определяет, является ли символ общим.

Применяется к