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


IFieldSymbol Интерфейс

Определение

Представляет поле в классе, структуре или перечислении.

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

Комментарии

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

Свойства

AssociatedSymbol

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

CanBeReferencedByName

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

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

Возвращает постоянное значение этого поля.

ContainingAssembly

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

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

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

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

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

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

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

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

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

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

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

CustomModifiers

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

DeclaredAccessibility

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

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

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

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

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

Если IsFixedSizeBuffer имеет значение true, значение между квадратными скобками в объявлении буфера фиксированного размера. Если IsFixedSizeBuffer имеет значение false или возникает ошибка (например, недопустимое значение константы в источнике), FixedSize равно 0. Обратите внимание, что для объявления буфера фиксированного размера это значение. Тип будет типом указателя, тип которого указывает на тип будет объявленным типом элемента буфера фиксированного размера.

HasConstantValue

Возвращает значение false, если поле не было объявлено как const, или значение константы было опущено или ошибочно. Значение True в противном случае.

HasUnsupportedMetadata

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

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

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

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

Этот параметр задается для символов метаданных, как показано ниже.

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

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

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

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

Возвращает значение true, если это поле было объявлено как const (т. е. является константным объявлением). Также возвращает значение true для элемента перечисления.

IsDefinition

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

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

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

IsExtern

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

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

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

IsImplicitlyDeclared

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

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

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

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

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

IsRequired

Значение true, если это поле необходимо задать в инициализаторе объектов во время построения.

IsSealed

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

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

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

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

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

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

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

Kind

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

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

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

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

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

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

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

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

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

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

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

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

Возвращает допустимость значений NULL верхнего уровня для этого поля.

OriginalDefinition

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

RefCustomModifiers

Пользовательские модификаторы, связанные с модификатором ссылок, или пустой массив, если нет.

RefKind

Возвращает значение RefKind поля.

Type

Возвращает тип данного поля.

Методы

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)
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)

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

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