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


IArrayTypeSymbol Интерфейс

Определение

Представляет массив.

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

Комментарии

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

Свойства

AllInterfaces

Список всех интерфейсов, для которых этот тип является объявленным подтипом, за исключением самого этого типа. Сюда входят все объявленные базовые интерфейсы, все объявленные базовые интерфейсы базовых типов и все объявленные базовые интерфейсы этих результатов (рекурсивно). Это также эффективный набор интерфейсов параметра типа. Каждый результат отображается в списке ровно один раз. Этот список с топологической сортировкой по отношениям наследования: если тип интерфейса A расширяет тип интерфейса B, то A предшествует B в списке. Это не совсем то же самое, что "все интерфейсы, для которых этот тип является правильным подтипом", поскольку он не учитывает дисперсию: AllInterfaces для строки IEnumerable<не будет включать объект> IEnumerable<.>

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

DeclaredAccessibility

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

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

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

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

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

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

ElementType

Возвращает тип элементов, хранящихся в массиве.

HasUnsupportedMetadata

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

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

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

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

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

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

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

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

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

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

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

Является ли это символом для анонимного типа (включая анонимный делегат VB).

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

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

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

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

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

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

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

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

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

Значение true, если тип представляет собственное целое число. В C# типы, представленные ключевыми словами языка nint и nuint.

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

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

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

Значение true, если тип доступен только для чтения.

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

Для исходных символов значение true, если тип является записью. Для символов метаданных значение true, если тип является записью и ссылочным типом.

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

Значение true, если этот тип известен как ссылочный тип. Это никогда не так, что IsReferenceType и оба IsValueType возвращают значение true. Однако для параметра IsReferenceType неограниченного типа и IsValueType будут возвращать значение false.

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

Значение true, если тип похож на ссылку, то есть он следует правилам, аналогичным переменным clR by-ref. False, если тип не является ссылочный или язык не имеет понятия ссылочных типов.

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

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

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

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

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

Это отсчитываемый от нуля одномерный массив, т. е. SZArray в терминах CLR. SZArray — это тип массива, закодированный в метаданных с ELEMENT_TYPE_SZARRAY (всегда однодимный массив с 0 нижней границей). Тип, отличный от SZArray, кодируется в метаданных с ELEMENT_TYPE_ARRAY и с необязательными размерами и нижними границами. Несмотря на то, что не SZArray также может быть массивом с 0 нижней границей, кодировка этих типов в метаданных отличается.

IsTupleType

Является ли это символом кортежа .

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

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

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

Значение true, если тип неуправляем в соответствии с языковыми правилами. False, если управляемая или если язык не имеет понятия неуправляемых типов.

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

Значение true, если этот тип известен как тип значения. Это никогда не так, что IsReferenceType и оба IsValueType возвращают значение true. Однако для параметра IsReferenceType неограниченного типа и IsValueType будут возвращать значение false.

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

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

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

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

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

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

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

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

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

Заданы нижние границы для измерений по положению. Длина может быть меньше , что Rankозначает, что некоторые конечные измерения не имеют указанной нижней границы. Чаще всего все измерения привязаны к нулю. В этом случае возвращается массив по умолчанию (Nothing в VB).

MetadataName

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

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

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

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

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

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

Заметка, допускаемая значение NULL, связанная с типом, или None , если ее нет.

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

Исходное определение этого символа. Если этот символ создан из другого символа путем подстановки типа, то OriginalDefinition получает исходный символ, определенный в источнике или метаданных.

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

Возвращает количество измерений этого массива. Обычный одномерный массив имеет ранг 1, двумерный массив имеет ранг 2 и т. д.

Sizes

Указанные размеры размеров по положению. Длина может быть меньше , а Rankэто означает, что некоторые конечные измерения не имеют указанного размера. Наиболее распространенным случаем является то, что ни одно из измерений не имеет указанного размера — возвращается пустой массив.

SpecialType

Перечисляемое значение, идентифицирующее определенные "специальные" типы, такие как Object. Возвращает значение None , если тип не является специальным.

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

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

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

Методы

Accept(SymbolVisitor)

Представляет массив.

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

Представляет массив.

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

Представляет массив.

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

Представляет массив.

Equals(ISymbol, SymbolEqualityComparer)

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

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

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

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

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

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

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

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

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

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

Получение всех элементов этого символа.

(Унаследовано от INamespaceOrTypeSymbol)
GetMembers(String)

Получение всех элементов этого символа с определенным именем.

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

Получает все члены этого символа, которые являются типами.

(Унаследовано от INamespaceOrTypeSymbol)
GetTypeMembers(String)

Получает все члены этого символа, которые являются типами с определенным именем любого arity.

(Унаследовано от INamespaceOrTypeSymbol)
GetTypeMembers(String, Int32)

Получение всех элементов этого символа, которые являются типами, имеющими определенное имя и arity

(Унаследовано от INamespaceOrTypeSymbol)
ToDisplayParts(NullableFlowState, SymbolDisplayFormat)

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

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

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

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

Преобразует ITypeSymbol состояние потока и , допускающее значение NULL, в строковое представление.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

IsMustOverride(ISymbol)

Представляет массив.

IsNotOverridable(ISymbol)

Представляет массив.

IsOverridable(ISymbol)

Представляет массив.

IsOverrides(ISymbol)

Представляет массив.

IsShared(ISymbol)

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

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