K2/tests: add /* hidden ... */ rendering to scope dumper

This commit is contained in:
Mikhail Glukhikh
2024-01-22 11:24:48 +01:00
committed by Space Team
parent f4f009cb9a
commit d0c78e5116
2 changed files with 13 additions and 6 deletions
@@ -9,6 +9,8 @@ import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.declarations.FirCallableDeclaration
import org.jetbrains.kotlin.fir.declarations.FirDeclarationOrigin
import org.jetbrains.kotlin.fir.declarations.FirRegularClass
import org.jetbrains.kotlin.fir.declarations.isHiddenEverywhereBesideSuperCalls
import org.jetbrains.kotlin.fir.declarations.isHiddenToOvercomeSignatureClash
import org.jetbrains.kotlin.fir.render
import org.jetbrains.kotlin.fir.renderer.FirRenderer
import org.jetbrains.kotlin.fir.resolve.ScopeSession
@@ -144,6 +146,11 @@ class FirScopeDumpHandler(testServices: TestServices) : FirAnalysisHandler(testS
private fun SmartPrinter.printInfo(declaration: FirCallableDeclaration, scope: FirTypeScope, counter: SymbolCounter) {
val origin = declaration.origin.takeUnless { it == FirDeclarationOrigin.BuiltIns } ?: FirDeclarationOrigin.Library
print("[$origin]: ")
if (declaration.isHiddenEverywhereBesideSuperCalls == true) {
print("/* hidden beside supers */ ")
} else if (declaration.isHiddenToOvercomeSignatureClash == true) {
print("/* hidden due to clash */ ")
}
val renderedDeclaration = FirRenderer.noAnnotationBodiesAccessorAndArguments().renderElementAsString(declaration).trim()
print(renderedDeclaration)
print(" from $scope")