ITypeParameterSymbol Interface
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa um parâmetro de tipo em um tipo genérico ou método genérico.
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
- Implementações
Comentários
Essa interface é reservada para implementação por suas APIs associadas. Reservamo-nos o direito de mudá-lo no futuro.
Propriedades
AllInterfaces |
A lista de todas as interfaces das quais esse tipo é um subtipo declarado, excluindo esse tipo em si. Isso inclui todas as interfaces base declaradas, todas as interfaces base declaradas de tipos base e todas as interfaces base declaradas desses resultados (recursivamente). Esse também é o conjunto de interface efetivo de um parâmetro de tipo. Cada resultado aparece exatamente uma vez na lista. Essa lista é classificada topologicamente pela relação de herança: se o tipo de interface A estende o tipo de interface B, A precede B na lista. Isso não é exatamente o mesmo que "todas as interfaces das quais esse tipo é um subtipo adequado" porque não leva em conta a variação: AllInterfaces para cadeia de caracteres IEnumerable<> não incluirá o objeto> IEnumerable<. (Herdado de ITypeSymbol) |
BaseType |
O tipo base declarado desse tipo ou nulo. O tipo de objeto, os tipos de interface e os tipos de ponteiro não têm um tipo base. O tipo base de um parâmetro de tipo é sua classe base efetiva. (Herdado de ITypeSymbol) |
CanBeReferencedByName |
Retornará true se esse símbolo puder ser referenciado por seu nome no código. (Herdado de ISymbol) |
ConstraintNullableAnnotations |
As nulidades de nível superior que foram especificadas diretamente como restrições nos tipos de restrição. |
ConstraintTypes |
Os tipos que foram especificados diretamente como restrições no parâmetro de tipo. |
ContainingAssembly |
Obtém o IAssemblySymbol para o assembly recipiente. Retornará nulo se o símbolo for compartilhado entre vários assemblies. (Herdado de ISymbol) |
ContainingModule |
Obtém o IModuleSymbol para o módulo que contém. Retornará nulo se o símbolo for compartilhado entre vários módulos. (Herdado de ISymbol) |
ContainingNamespace |
Obtém o INamespaceSymbol para o namespace delimitamento mais próximo. Retornará nulo se o símbolo não estiver contido em um namespace. (Herdado de ISymbol) |
ContainingSymbol |
Obtém o ISymbol para o símbolo que contém imediatamente. (Herdado de ISymbol) |
ContainingType |
Obtém o INamedTypeSymbol para o tipo recipiente. Retornará nulo se o símbolo não estiver contido em um tipo. (Herdado de ISymbol) |
DeclaredAccessibility |
Obtém um Accessibility que indica a acessibilidade declarada para o símbolo. Retornará NotApplicable se nenhuma acessibilidade for declarada. (Herdado de ISymbol) |
DeclaringMethod |
O método que declara o parâmetro de tipo ou nulo. |
DeclaringSyntaxReferences |
Obtenha os nós de sintaxe em que esse símbolo foi declarado na origem. Alguns símbolos (por exemplo, classes parciais) podem ser definidos em mais de um local. Essa propriedade deve retornar um ou mais nós de sintaxe somente se o símbolo tiver sido declarado no código-fonte e também não tiver sido declarado implicitamente (consulte a propriedade IsImplicitlyDeclared). Observe que, para o símbolo de namespace, a sintaxe de declaração pode estar declarando um namespace aninhado. Por exemplo, o nó de sintaxe declarando para N1 em "namespace N1. N2 {...}" é toda a NamespaceDeclarationSyntax para N1. N2. Para o namespace global, a sintaxe declarante será CompilationUnitSyntax. (Herdado de ISymbol) |
DeclaringType |
O tipo que declara o parâmetro de tipo ou nulo. |
HasConstructorConstraint |
True se a restrição de construtor sem parâmetros ( |
HasNotNullConstraint |
True se a restrição notnull ( |
HasReferenceTypeConstraint |
True se a restrição de tipo de referência ( |
HasUnmanagedTypeConstraint |
True se a restrição de tipo de valor ( |
HasUnsupportedMetadata |
Indica que esse símbolo usa metadados que não têm suporte no idioma. Os exemplos incluem:
Isso é diferenciado de, por exemplo, referências a símbolos de metadados definidos em assemblies que não foram referenciados. Símbolos em que isso retorna true nunca podem ser usados com êxito e, portanto, nunca devem aparecer em nenhum recurso do IDE. Isso é definido para símbolos de metadados, da seguinte maneira:
|
HasValueTypeConstraint |
True se a restrição de tipo de valor ( |
Interfaces |
Obtém o conjunto de interfaces que esse tipo implementa diretamente. Esse conjunto não inclui interfaces que são interfaces base de interfaces implementadas diretamente. Isso inclui as interfaces declaradas como restrições em parâmetros de tipo. (Herdado de ITypeSymbol) |
IsAbstract |
Obtém um valor que indica se o símbolo é abstrato. (Herdado de ISymbol) |
IsAnonymousType |
Esse é um símbolo para um tipo anônimo (incluindo o delegado anônimo do VB). (Herdado de ITypeSymbol) |
IsDefinition |
Obtém um valor que indica se o símbolo é a definição original. Retornará false se o símbolo for derivado de outro símbolo, por substituição de tipo, por exemplo. (Herdado de ISymbol) |
IsExtern |
Obtém um valor que indica se o símbolo é definido externamente. (Herdado de ISymbol) |
IsImplicitlyDeclared |
Retorna true se esse símbolo foi criado automaticamente pelo compilador e não tem uma declaração de código-fonte correspondente explícita. (Herdado de ISymbol) |
IsNamespace |
Retornará true se esse símbolo for um namespace. Se não for um namespace, ele deverá ser um tipo. (Herdado de INamespaceOrTypeSymbol) |
IsNativeIntegerType |
True se o tipo representar um inteiro nativo. Em C#, os tipos representados pelas palavras-chave de linguagem 'nint' e 'nuint'. (Herdado de ITypeSymbol) |
IsOverride |
Obtém um valor que indica se o símbolo é uma substituição de um símbolo de classe base. (Herdado de ISymbol) |
IsReadOnly |
True se o tipo for somente leitura. (Herdado de ITypeSymbol) |
IsRecord |
Para símbolos de origem, true se o tipo for um registro. Para símbolos de metadados, true se o tipo for um registro e um tipo de referência. (Herdado de ITypeSymbol) |
IsReferenceType |
True se esse tipo é conhecido por ser um tipo de referência. Nunca é o caso em que IsReferenceType e IsValueType ambos retornam true. No entanto, para um parâmetro de tipo irrestrito, IsReferenceType e IsValueType ambos retornarão false. (Herdado de ITypeSymbol) |
IsRefLikeType |
True se o tipo for ref-like, o que significa que ele segue regras semelhantes às variáveis CLR by-ref. False se o tipo não for ref-like ou se a linguagem não tiver nenhum conceito de tipos ref-like. (Herdado de ITypeSymbol) |
IsSealed |
Obtém um valor que indica se o símbolo está lacrado. (Herdado de ISymbol) |
IsStatic |
Obtém um valor que indica se o símbolo é estático. (Herdado de ISymbol) |
IsTupleType |
Esse é um símbolo para uma tupla . (Herdado de ITypeSymbol) |
IsType |
Retornará true se esse símbolo for um tipo. Se não for um tipo, ele deverá ser um namespace. (Herdado de INamespaceOrTypeSymbol) |
IsUnmanagedType |
True se o tipo não for gerenciado de acordo com as regras de linguagem. False se gerenciado ou se a linguagem não tiver nenhum conceito de tipos não gerenciados. (Herdado de ITypeSymbol) |
IsValueType |
True se esse tipo for conhecido por ser um tipo de valor. Nunca é o caso em que IsReferenceType e IsValueType ambos retornam true. No entanto, para um parâmetro de tipo irrestrito, IsReferenceType e IsValueType ambos retornarão false. (Herdado de ITypeSymbol) |
IsVirtual |
Obtém um valor que indica se o símbolo é virtual. (Herdado de ISymbol) |
Kind |
Obtém o SymbolKind que indica que tipo de símbolo ele é. (Herdado de ISymbol) |
Language |
Obtém a linguagem de origem ("C#" ou "Visual Basic"). (Herdado de ISymbol) |
Locations |
Obtém os locais em que o símbolo foi originalmente definido, seja na origem ou nos metadados. Alguns símbolos (por exemplo, classes parciais) podem ser definidos em mais de um local. (Herdado de ISymbol) |
MetadataName |
Obtém o nome de um símbolo como ele aparece nos metadados. Na maioria das vezes, isso é o mesmo que a propriedade Name, com as seguintes exceções:
|
MetadataToken |
Obtém o token de metadados associado a esse símbolo ou 0 se o símbolo não for carregado dos metadados. (Herdado de ISymbol) |
Name |
Obtém o nome do símbolo. Retorna a cadeia de caracteres vazia se não for nomeada. (Herdado de ISymbol) |
NullableAnnotation |
Anotação anulável associada ao tipo ou None se não houver nenhuma. (Herdado de ITypeSymbol) |
Ordinal |
A posição ordinal do parâmetro de tipo na lista de parâmetros que o declara. O primeiro parâmetro de tipo tem zero ordinal. |
OriginalDefinition |
Obtenha a definição original desse símbolo de tipo. Se esse símbolo for derivado de outro símbolo por substituição de tipo (digamos), ele obterá o símbolo original, como foi definido na origem ou nos metadados. |
ReducedFrom |
Se esse for um parâmetro de tipo de um método de extensão reduzido, obterá a definição de parâmetro de tipo da qual esse parâmetro de tipo foi reduzido. Caso contrário, retornará Nothing. |
ReferenceTypeConstraintNullableAnnotation |
Se HasReferenceTypeConstraint for true, retornará a nulidade de nível superior da |
SpecialType |
Um valor enumerado que identifica determinados tipos "especiais", como Object. Retornará None se o tipo não for especial. (Herdado de ITypeSymbol) |
TypeKind |
Um valor enumerado que identifica se esse tipo é uma matriz, ponteiro, enumeração e assim por diante. (Herdado de ITypeSymbol) |
TypeParameterKind |
O tipo de parâmetro de tipo desse parâmetro de tipo. |
Variance |
A anotação de variação, se houver, da declaração de parâmetro de tipo. Os parâmetros de tipo podem ser declarados como covariantes ( |
Métodos
Accept(SymbolVisitor) |
Representa um parâmetro de tipo em um tipo genérico ou método genérico. (Herdado de ISymbol) |
Accept<TArgument,TResult>(SymbolVisitor<TArgument,TResult>, TArgument) |
Representa um parâmetro de tipo em um tipo genérico ou método genérico. (Herdado de ISymbol) |
Accept<TResult>(SymbolVisitor<TResult>) |
Representa um parâmetro de tipo em um tipo genérico ou método genérico. (Herdado de ISymbol) |
Equals(ISymbol, SymbolEqualityComparer) |
Determina se esse símbolo é igual a outro, de acordo com as regras do fornecido SymbolEqualityComparer (Herdado de ISymbol) |
FindImplementationForInterfaceMember(ISymbol) |
Retorna o símbolo correspondente nesse tipo ou um tipo base que implementa interfaceMember (implicitamente ou explicitamente) ou nulo se nenhum símbolo desse tipo existir (o que pode ser porque esse tipo não implementa o contêiner de interfaceMember ou esse tipo não fornece um membro que implementa interfaceMember com êxito). (Herdado de ITypeSymbol) |
GetAttributes() |
Obtém os atributos do símbolo. Retornará um vazio IEnumerable<T> se não houver atributos. (Herdado de ISymbol) |
GetDocumentationCommentId() |
Retorna a ID de Comentário da Documentação para o símbolo ou nulo se o símbolo não der suporte a comentários de documentação. (Herdado de ISymbol) |
GetDocumentationCommentXml(CultureInfo, Boolean, CancellationToken) |
Obtém o XML (como texto) para o comentário associado ao símbolo. (Herdado de ISymbol) |
GetMembers() |
Obtenha todos os membros deste símbolo. (Herdado de INamespaceOrTypeSymbol) |
GetMembers(String) |
Obtenha todos os membros desse símbolo que têm um nome específico. (Herdado de INamespaceOrTypeSymbol) |
GetTypeMembers() |
Obtenha todos os membros desse símbolo que são tipos. (Herdado de INamespaceOrTypeSymbol) |
GetTypeMembers(String) |
Obtenha todos os membros desse símbolo que são tipos que têm um nome específico, de qualquer arity. (Herdado de INamespaceOrTypeSymbol) |
GetTypeMembers(String, Int32) |
Obter todos os membros desse símbolo que são tipos que têm um nome e arity específicos (Herdado de INamespaceOrTypeSymbol) |
ToDisplayParts(NullableFlowState, SymbolDisplayFormat) |
Converte um símbolo em uma matriz de partes de cadeia de caracteres, cada uma delas com um tipo. Útil para colorir a cadeia de caracteres de exibição. (Herdado de ITypeSymbol) |
ToDisplayParts(SymbolDisplayFormat) |
Converta um símbolo em uma matriz de partes de cadeia de caracteres, cada uma delas com um tipo. Útil para colorir a cadeia de caracteres de exibição. (Herdado de ISymbol) |
ToDisplayString(NullableFlowState, SymbolDisplayFormat) |
Converte um |
ToDisplayString(SymbolDisplayFormat) |
Converte o símbolo em uma representação de cadeia de caracteres. (Herdado de ISymbol) |
ToMinimalDisplayParts(SemanticModel, Int32, SymbolDisplayFormat) |
Converta um símbolo em uma matriz de partes de cadeia de caracteres, cada uma delas com um tipo. Pode ser adaptado para um local específico no código-fonte. Útil para colorir a cadeia de caracteres de exibição. (Herdado de ISymbol) |
ToMinimalDisplayParts(SemanticModel, NullableFlowState, Int32, SymbolDisplayFormat) |
Converta um símbolo em uma matriz de partes de cadeia de caracteres, cada uma delas com um tipo. Pode ser adaptado para um local específico no código-fonte. Útil para colorir a cadeia de caracteres de exibição. (Herdado de ITypeSymbol) |
ToMinimalDisplayString(SemanticModel, Int32, SymbolDisplayFormat) |
Converta um símbolo em uma cadeia de caracteres que pode ser exibida para o usuário. Pode ser adaptado para um local específico no código-fonte. (Herdado de ISymbol) |
ToMinimalDisplayString(SemanticModel, NullableFlowState, Int32, SymbolDisplayFormat) |
Converte um símbolo em uma cadeia de caracteres que pode ser exibida para o usuário. Pode ser adaptado para um local específico no código-fonte. (Herdado de ITypeSymbol) |
WithNullableAnnotation(NullableAnnotation) |
Retorna o mesmo tipo desse tipo, mas com a anotação anulável fornecida. (Herdado de ITypeSymbol) |
Métodos de Extensão
IsMustOverride(ISymbol) |
Representa um parâmetro de tipo em um tipo genérico ou método genérico. |
IsNotOverridable(ISymbol) |
Representa um parâmetro de tipo em um tipo genérico ou método genérico. |
IsOverridable(ISymbol) |
Representa um parâmetro de tipo em um tipo genérico ou método genérico. |
IsOverrides(ISymbol) |
Representa um parâmetro de tipo em um tipo genérico ou método genérico. |
IsShared(ISymbol) |
Determina se o símbolo é Compartilhado. |