Compartilhar via


ISourceAssemblySymbol Interface

Definição

Representa um símbolo de assembly de origem exposto pelo compilador.

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)
Implementações

Comentários

Essa interface é reservada para implementação por suas APIs associadas. Reservamos o direito de mudá-lo no futuro.

Propriedades

CanBeReferencedByName

Retornará true se esse símbolo puder ser referenciado por seu nome no código.

(Herdado de ISymbol)
Compilation

Representa um símbolo de assembly de origem exposto pelo compilador.

ContainingAssembly

Obtém o IAssemblySymbol assembly que contém. Retornará nulo se o símbolo for compartilhado em vários assemblies.

(Herdado de ISymbol)
ContainingModule

Obtém o IModuleSymbol módulo que contém. Retornará nulo se o símbolo for compartilhado em vários módulos.

(Herdado de ISymbol)
ContainingNamespace

Obtém o INamespaceSymbol namespace de colocação mais próximo. Retornará nulo se o símbolo não estiver contido em um namespace.

(Herdado de ISymbol)
ContainingSymbol

Obtém o ISymbol símbolo que contém imediatamente.

(Herdado de ISymbol)
ContainingType

Obtém o INamedTypeSymbol tipo que contém. Retornará nulo se o símbolo não estiver contido em um tipo.

(Herdado de ISymbol)
DeclaredAccessibility

Obtém uma Accessibility indicação da acessibilidade declarada para o símbolo. Retorna NotApplicable se nenhuma acessibilidade for declarada.

(Herdado de ISymbol)
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 de declaração para N1 no "namespace N1. N2 {...}" é toda a NamespaceDeclarationSyntax para N1. N2. Para o namespace global, a sintaxe de declaração será a sintaxe CompilationUnitSyx.

(Herdado de ISymbol)
GlobalNamespace

Obtém o namespace raiz mesclado que contém todos os namespaces e tipos definidos nos módulos deste assembly. Se houver apenas um módulo neste assembly, essa propriedade retornará apenas o GlobalNamespace desse módulo.

(Herdado de IAssemblySymbol)
HasUnsupportedMetadata

Indica que esse símbolo usa metadados que não podem ser suportados pelo idioma.

Os exemplos incluem:

  • Tipos de ponteiro no VB
  • Tipo de retorno ByRef
  • Modificadores personalizados necessários

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 de IDE.

Isso é definido para símbolos de metadados, da seguinte maneira:

  • Tipo - se um tipo não tiver suporte (por exemplo, um tipo de ponteiro)
  • Método – o parâmetro ou o tipo de retorno não tem suporte
  • Campo – o tipo não tem suporte
  • Evento – o tipo não tem suporte
  • Propriedade – o tipo não tem suporte
  • Parâmetro – o tipo não tem suporte
(Herdado de ISymbol)
Identity

Obtém o nome deste assembly.

(Herdado de IAssemblySymbol)
IsAbstract

Obtém um valor que indica se o símbolo é abstrato.

(Herdado de ISymbol)
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 instância.

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

True se o assembly contiver código interativo.

(Herdado de IAssemblySymbol)
IsOverride

Obtém um valor que indica se o símbolo é uma substituição de um símbolo de classe base.

(Herdado de ISymbol)
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)
IsVirtual

Obtém um valor que indica se o símbolo é virtual.

(Herdado de ISymbol)
Kind

Obtém o SymbolKind tipo de símbolo que indica.

(Herdado de ISymbol)
Language

Obtém o idioma 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:

  1. O nome dos metadados de tipos genéricos inclui o sufixo "'1", "'2" etc. que indica o número de parâmetros de tipo (ele não inclui, no entanto, nomes de tipos ou namespaces contendo).
  2. O nome dos metadados de nomes de interface explícitos tem espaços removidos, em comparação com a propriedade name.
  3. O comprimento dos nomes é limitado para não exceder as restrições de metadados.
(Herdado de ISymbol)
MetadataToken

Obtém o token de metadados associado a esse símbolo ou 0 se o símbolo não for carregado de metadados.

(Herdado de ISymbol)
MightContainExtensionMethods

Determina se o assembly pode conter métodos de extensão. Se for falso, o assembly não conterá métodos de extensão.

(Herdado de IAssemblySymbol)
Modules

Obtém os módulos neste assembly. (Deve haver pelo menos um.) O primeiro é o módulo principal que contém o manifesto do assembly.

(Herdado de IAssemblySymbol)
Name

Obtém o nome do símbolo. Retorna a cadeia de caracteres vazia se não for nomeada.

(Herdado de ISymbol)
NamespaceNames

Obtém o conjunto de nomes de namespace deste assembly.

(Herdado de IAssemblySymbol)
OriginalDefinition

Obtém a ISymbol definição original do símbolo. Se esse símbolo for derivado de outro símbolo, por substituição de tipo, por exemplo, ele obterá o símbolo original, pois ele foi definido na origem ou nos metadados.

(Herdado de ISymbol)
TypeNames

Obtém o conjunto de identificadores de tipo deste assembly.

(Herdado de IAssemblySymbol)

Métodos

Accept(SymbolVisitor)

Representa um símbolo de assembly de origem exposto pelo compilador.

(Herdado de ISymbol)
Accept<TArgument,TResult>(SymbolVisitor<TArgument,TResult>, TArgument)

Representa um símbolo de assembly de origem exposto pelo compilador.

(Herdado de ISymbol)
Accept<TResult>(SymbolVisitor<TResult>)

Representa um símbolo de assembly de origem exposto pelo compilador.

(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)
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 oferecer 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)
GetForwardedTypes()

Retorna símbolos de tipo para tipos de nível superior (não aninhados) encaminhados por este assembly.

(Herdado de IAssemblySymbol)
GetMetadata()

Se esse símbolo representar um assembly de metadados, retornará o subjacente AssemblyMetadata.

Caso contrário, isso retornará null.

(Herdado de IAssemblySymbol)
GetTypeByMetadataName(String)

Pesquise um tipo dentro do assembly usando o nome de metadados clr canônicos do tipo.

(Herdado de IAssemblySymbol)
GivesAccessTo(IAssemblySymbol)

Obtém um valor que indica se esse assembly dá toAssembly acesso a símbolos internos

(Herdado de IAssemblySymbol)
ResolveForwardedType(String)

Retorna o símbolo de tipo para um tipo encaminhado com base em seu nome de metadados CLR canônico. O nome deve se referir a um tipo não aninhado. Se o tipo com esse nome não for encaminhado, nulo será retornado.

(Herdado de IAssemblySymbol)
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(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)
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)

Métodos de Extensão

IsMustOverride(ISymbol)

Representa um símbolo de assembly de origem exposto pelo compilador.

IsNotOverridable(ISymbol)

Representa um símbolo de assembly de origem exposto pelo compilador.

IsOverridable(ISymbol)

Representa um símbolo de assembly de origem exposto pelo compilador.

IsOverrides(ISymbol)

Representa um símbolo de assembly de origem exposto pelo compilador.

IsShared(ISymbol)

Determina se o símbolo é Compartilhado.

Aplica-se a