ITypeParameterSymbol Интерфейс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет параметр типа в универсальном типе или универсальном методе.
public interface class ITypeParameterSymbol : IEquatable<Microsoft::CodeAnalysis::ISymbol ^>, Microsoft::CodeAnalysis::ITypeSymbol
public interface ITypeParameterSymbol : IEquatable<Microsoft.CodeAnalysis.ISymbol>, Microsoft.CodeAnalysis.ITypeSymbol
type ITypeParameterSymbol = interface
interface ITypeSymbol
interface INamespaceOrTypeSymbol
interface ISymbol
interface IEquatable<ISymbol>
Public Interface ITypeParameterSymbol
Implements IEquatable(Of ISymbol), ITypeSymbol
- Реализации
Комментарии
Этот интерфейс зарезервирован для реализации связанными с ним API. Мы оставляем за собой право изменить его в будущем.
Свойства
AllInterfaces |
Список всех интерфейсов, для которых этот тип является объявленным подтипом, за исключением самого этого типа. Сюда входят все объявленные базовые интерфейсы, все объявленные базовые интерфейсы базовых типов и все объявленные базовые интерфейсы этих результатов (рекурсивно). Это также действующий набор интерфейсов параметра типа. Каждый результат отображается в списке ровно один раз. Этот список с топологической сортировкой по отношениям наследования: если тип интерфейса A расширяет тип интерфейса B, то A предшествует B в списке. Это не совсем то же самое, что "все интерфейсы, для которых этот тип является правильным подтипом", поскольку он не учитывает дисперсию: AllInterfaces для строки IEnumerable<не будет включать объект> IEnumerable<.> (Унаследовано от ITypeSymbol) |
BaseType |
Объявленный базовый тип этого типа или null. Тип объекта, типы интерфейсов и типы указателей не имеют базового типа. Базовым типом параметра типа является его действующий базовый класс. (Унаследовано от ITypeSymbol) |
CanBeReferencedByName |
Возвращает значение true, если на этот символ можно ссылаться по его имени в коде. (Унаследовано от ISymbol) |
ConstraintNullableAnnotations |
Значения NULL верхнего уровня, которые были непосредственно указаны в качестве ограничений для типов ограничений. |
ConstraintTypes |
Типы, которые были непосредственно указаны в качестве ограничений в параметре типа. |
ContainingAssembly |
IAssemblySymbol Возвращает для содержащей сборки. Возвращает значение NULL, если символ является общим для нескольких сборок. (Унаследовано от ISymbol) |
ContainingModule |
Возвращает для IModuleSymbol содержащего модуля. Возвращает значение NULL, если символ является общим для нескольких модулей. (Унаследовано от ISymbol) |
ContainingNamespace |
Возвращает для INamespaceSymbol ближайшего включающего пространства имен. Возвращает значение NULL, если символ не содержится в пространстве имен. (Унаследовано от ISymbol) |
ContainingSymbol |
Возвращает для ISymbol непосредственно содержащего символа. (Унаследовано от ISymbol) |
ContainingType |
Возвращает для INamedTypeSymbol содержащегося типа. Возвращает значение NULL, если символ не содержится в типе. (Унаследовано от ISymbol) |
DeclaredAccessibility |
Возвращает объект , Accessibility указывающий объявленную доступность для символа. Возвращает NotApplicable, если специальные возможности не объявлены. (Унаследовано от ISymbol) |
DeclaringMethod |
Метод, объявляющий параметр типа, или null. |
DeclaringSyntaxReferences |
Получите синтаксические узлы, на которых этот символ был объявлен в источнике. Некоторые символы (например, разделяемые классы) могут быть определены в нескольких расположениях. Это свойство должно возвращать один или несколько синтаксических узлов только в том случае, если символ был объявлен в исходном коде, а также не был объявлен неявно (см. свойство IsImplicitlyDeclared). Обратите внимание, что для символа пространства имен декларативный синтаксис может объявлять вложенное пространство имен. Например, узел объявляющего синтаксиса для N1 в пространстве имен N1. N2 {...}" — это весь namespaceDeclarationSyntax для N1. N2. Для глобального пространства имен декларативным синтаксисом будет CompilationUnitSyntax. (Унаследовано от ISymbol) |
DeclaringType |
Тип, объявляющий параметр типа, или значение NULL. |
HasConstructorConstraint |
Значение true, если для параметра типа было указано ограничение конструктора без параметров ( |
HasNotNullConstraint |
Значение true, если для параметра типа было указано ограничение notnull ( |
HasReferenceTypeConstraint |
Значение true, если для параметра типа было указано ограничение ссылочного типа ( |
HasUnmanagedTypeConstraint |
Значение true, если для параметра типа было указано ограничение типа значения ( |
HasUnsupportedMetadata |
Указывает, что этот символ использует метаданные, которые не поддерживаются языком. Примеры приведены ниже.
Это отличается, например, от ссылок на символы метаданных, определенные в сборках, на которые не ссылались. Символы, в которых возвращается значение true, никогда не могут использоваться успешно и поэтому никогда не должны отображаться в какой-либо функции интегрированной среды разработки. Этот параметр задается для символов метаданных следующим образом:
|
HasValueTypeConstraint |
Значение true, если для параметра типа было указано ограничение типа значения ( |
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) |
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) |
MetadataName |
Возвращает имя символа, отображаемого в метаданных. В большинстве случаев это то же самое, что и свойство Name, за следующими исключениями:
|
MetadataToken |
Возвращает маркер метаданных, связанный с этим символом, или значение 0, если символ не загружается из метаданных. (Унаследовано от ISymbol) |
Name |
Получает имя символа. Возвращает пустую строку, если она не задана. (Унаследовано от ISymbol) |
NullableAnnotation |
Заметка, допускаемая значение NULL, связанная с типом, или None , если ее нет. (Унаследовано от ITypeSymbol) |
Ordinal |
Порядковый номер параметра типа в списке параметров, который объявляет его. Первый параметр типа имеет порядковый номер ноль. |
OriginalDefinition |
Получите исходное определение этого символа типа. Если этот символ является производным от другого символа с помощью подстановки типа ( например, ), он получает исходный символ, как он был определен в источнике или метаданных. |
ReducedFrom |
Если это параметр типа метода сокращенного расширения, возвращает определение параметра типа, из который был уменьшен этот параметр типа. В противном случае возвращает значение Nothing. |
ReferenceTypeConstraintNullableAnnotation |
Если HasReferenceTypeConstraint имеет значение true, возвращает допустимость значения NULL верхнего уровня для ограничения, указанного |
SpecialType |
Перечисляемое значение, идентифицирующее определенные "специальные" типы, такие как Object. Возвращает значение None , если тип не является специальным. (Унаследовано от ITypeSymbol) |
TypeKind |
Перечислимое значение, определяющее, является ли этот тип массивом, указателем, перечислением и т. д. (Унаследовано от ITypeSymbol) |
TypeParameterKind |
Тип параметра типа этого параметра типа. |
Variance |
Аннотация дисперсии (при наличии) объявления параметра типа. Параметры типа могут быть объявлены как ковариантные ( |
Методы
Accept(SymbolVisitor) |
Представляет параметр типа в универсальном типе или универсальном методе. (Унаследовано от ISymbol) |
Accept<TArgument,TResult>(SymbolVisitor<TArgument,TResult>, TArgument) |
Представляет параметр типа в универсальном типе или универсальном методе. (Унаследовано от ISymbol) |
Accept<TResult>(SymbolVisitor<TResult>) |
Представляет параметр типа в универсальном типе или универсальном методе. (Унаследовано от ISymbol) |
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) |
Преобразует |
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) |
Определяет, является ли символ общим. |