다음을 통해 공유


Compilation.IsSymbolAccessibleWithin(ISymbol, ISymbol, ITypeSymbol) 메서드

정의

내에서 within액세스할 수 있는지 symbol 확인합니다. 형식 throughType 의 선택적 한정자는 인스턴스 멤버에 대한 보호된 액세스를 확인하는 데 사용됩니다. 모든 기호는 이 컴파일 또는 이 컴파일에서 참조되는 일부 어셈블리(References)에 있어야 합니다. within 가 이어야 INamedTypeSymbol 합니다 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

매개 변수

symbol
ISymbol
within
ISymbol
throughType
ITypeSymbol

반환

설명

이러한 참조가 누락된 경우에도 제출은 이전 제출 및 참조된 어셈블리의 References기호를 참조할 수 있습니다. https://github.com/dotnet/roslyn/issues/27356.를 참조하세요. 이 구현은 이전 제출의 기호도 허용하여 이 작업을 수행합니다.

컴파일러에는 ISymbol API 사용으로 인해 발생할 수 있는 무한 재귀 회피, 사용 사이트 진단 검색 및 접근성 오류에 대한 이유를 보다 정확하게 진단하는 데 도움이 되는 추가 반환 세부 정보(컴파일러의 내부 API에서)를 포함하여 이 구현에서 충족되지 않는 액세스 검사에 대한 추가 요구 사항이 있으므로 컴파일러 내에서 이 API를 사용하지 않는 것이 좋습니다.

적용 대상