Partager via


SemanticModel.LookupBaseMembers(Int32, String) Méthode

Définition

Obtient les membres de type de base disponibles dans le contexte de l’emplacement spécifié. Semblable à l’appel LookupSymbols(Int32, INamespaceOrTypeSymbol, String, Boolean) avec le conteneur défini sur le type de base immédiat du type dans lequel position se produit. Toutefois, les règles d’accessibilité sont différentes : les membres protégés du type de base sont visibles.

Prenons l’exemple suivant :

public class Base { protected void M() { } }

classe publique dérivée : Base { void Test(Base b) { b.M(); // Erreur : impossible d’accéder au membre protégé. Base. M(); } }

Les membres protégés d’une instance d’un autre type sont accessibles uniquement si l’instance est connue pour être « cette » instance (comme indiqué par le mot clé « 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)

Paramètres

position
Int32

Position de caractère pour déterminer l’étendue et l’accessibilité de la déclaration englobante.

name
String

Nom du symbole à rechercher. Si la valeur null est spécifiée, les symboles avec tous les noms sont retournés.

Retours

Liste des symboles trouvés. Si aucun symbole n’a été trouvé, une liste vide est retournée.

Remarques

La « position » est utilisée pour déterminer quelles variables sont visibles et accessibles.

Les méthodes d’extension non réduites sont considérées, mais les méthodes d’extension réduites ne sont pas.

S’applique à