Compartilhar via


SemanticModel.LookupBaseMembers(Int32, String) Método

Definição

Obtém os membros de tipo base disponíveis no contexto do local especificado. Semelhante à chamada LookupSymbols(Int32, INamespaceOrTypeSymbol, String, Boolean) com o contêiner definido como o tipo base imediato do tipo no qual position ocorre. No entanto, as regras de acessibilidade são diferentes: os membros protegidos do tipo base ficarão visíveis.

Considere o seguinte exemplo:

classe pública Base { protected void M() { } }

classe pública Derivada: Base { void Test(Base b) { b.M(); // Error - não pode acessar o membro protegido. Base. M(); } }

Os membros protegidos de uma instância de outro tipo só poderão ser acessados se a instância for conhecida como "esta" instância (conforme indicado pela palavra-chave "base").

public System.Collections.Immutable.ImmutableArray<Microsoft.CodeAnalysis.ISymbol> LookupBaseMembers (int position, string name = default);
public System.Collections.Immutable.ImmutableArray<Microsoft.CodeAnalysis.ISymbol> LookupBaseMembers (int position, string? name = default);
member this.LookupBaseMembers : int * string -> System.Collections.Immutable.ImmutableArray<Microsoft.CodeAnalysis.ISymbol>
Public Function LookupBaseMembers (position As Integer, Optional name As String = Nothing) As ImmutableArray(Of ISymbol)

Parâmetros

position
Int32

A posição do caractere para determinar o escopo e a acessibilidade da declaração que inclui.

name
String

O nome do símbolo a ser encontrado. Se nulo for especificado, os símbolos com nomes serão retornados.

Retornos

Uma lista de símbolos que foram encontrados. Se nenhum símbolo foi encontrado, uma lista vazia será retornada.

Comentários

A "posição" é usada para determinar quais variáveis são visíveis e acessíveis.

Métodos de extensão não reduzidos são considerados, mas métodos de extensão reduzidos não são.

Aplica-se a