Partager via


Compilation.IsSymbolAccessibleWithin(ISymbol, ISymbol, ITypeSymbol) Méthode

Définition

Vérifie si symbol elle est accessible à partir de within. Un qualificateur facultatif de type throughType est utilisé pour résoudre l’accès protégé pour les membres d’instance. Tous les symboles doivent provenir de cette compilation ou d’un assembly référencé (References) par cette compilation. within doit être un INamedTypeSymbol ou IAssemblySymbol.

public bool IsSymbolAccessibleWithin (Microsoft.CodeAnalysis.ISymbol symbol, Microsoft.CodeAnalysis.ISymbol within, Microsoft.CodeAnalysis.ITypeSymbol throughType = default);
public bool IsSymbolAccessibleWithin (Microsoft.CodeAnalysis.ISymbol symbol, Microsoft.CodeAnalysis.ISymbol within, Microsoft.CodeAnalysis.ITypeSymbol? throughType = default);
member this.IsSymbolAccessibleWithin : Microsoft.CodeAnalysis.ISymbol * Microsoft.CodeAnalysis.ISymbol * Microsoft.CodeAnalysis.ITypeSymbol -> bool
Public Function IsSymbolAccessibleWithin (symbol As ISymbol, within As ISymbol, Optional throughType As ITypeSymbol = Nothing) As Boolean

Paramètres

symbol
ISymbol
within
ISymbol
throughType
ITypeSymbol

Retours

Remarques

Les soumissions peuvent référencer des symboles des soumissions précédentes et de leurs assemblys référencés, même si ces références sont manquantes References. Consultez https://github.com/dotnet/roslyn/issues/27356. Cette implémentation fonctionne également en autorisant les symboles des soumissions précédentes.

Il est recommandé d’éviter l’utilisation de cette API dans les compilateurs, car les compilateurs ont des exigences supplémentaires pour la vérification des accès qui ne sont pas satisfaites par cette implémentation, y compris l’évitement de récursivité infinie qui pourrait résulter de l’utilisation des API ISymbol ici, la détection des diagnostics de site d’utilisation et des détails retournés supplémentaires (à partir des API internes du compilateur) qui sont utiles pour diagnostiquer plus précisément les raisons de l’échec d’accessibilité.

S’applique à