@@ -14,6 +14,7 @@ import org.jetbrains.kotlin.analysis.api.impl.base.test.cases.symbols.SymbolTest
14
14
import org.jetbrains.kotlin.analysis.api.impl.base.test.cases.symbols.SymbolTestDirectives.DO_NOT_CHECK_SYMBOL_RESTORE_K1
15
15
import org.jetbrains.kotlin.analysis.api.impl.base.test.cases.symbols.SymbolTestDirectives.DO_NOT_CHECK_SYMBOL_RESTORE_K2
16
16
import org.jetbrains.kotlin.analysis.api.impl.base.test.cases.symbols.SymbolTestDirectives.PRETTY_RENDERER_OPTION
17
+ import org.jetbrains.kotlin.analysis.api.impl.base.test.cases.symbols.SymbolTestDirectives.RENDER_IS_PUBLIC_API
17
18
import org.jetbrains.kotlin.analysis.api.renderer.declarations.KaDeclarationRenderer
18
19
import org.jetbrains.kotlin.analysis.api.renderer.declarations.impl.KaDeclarationRendererForDebug
19
20
import org.jetbrains.kotlin.analysis.api.renderer.declarations.renderers.KaClassifierBodyRenderer
@@ -330,8 +331,12 @@ abstract class AbstractSymbolTest : AbstractAnalysisApiBasedTest() {
330
331
}
331
332
332
333
protected open fun KaSession.renderSymbolForComparison (symbol : KaSymbol , directives : RegisteredDirectives ): String {
333
- val renderExpandedTypes = directives[PRETTY_RENDERER_OPTION ].any { it == PrettyRendererOption .FULLY_EXPANDED_TYPES }
334
- return with (DebugSymbolRenderer (renderExtra = true , renderExpandedTypes = renderExpandedTypes)) { render(useSiteSession, symbol) }
334
+ val renderer = DebugSymbolRenderer (
335
+ renderExtra = true ,
336
+ renderExpandedTypes = directives[PRETTY_RENDERER_OPTION ].any { it == PrettyRendererOption .FULLY_EXPANDED_TYPES },
337
+ renderIsPublicApi = RENDER_IS_PUBLIC_API in directives
338
+ )
339
+ return with (renderer) { render(useSiteSession, symbol) }
335
340
}
336
341
}
337
342
@@ -363,6 +368,8 @@ object SymbolTestDirectives : SimpleDirectivesContainer() {
363
368
val PRETTY_RENDERER_OPTION by enumDirective(description = " Explicit rendering mode" ) { PrettyRendererOption .valueOf(it) }
364
369
365
370
val TARGET_FILE_NAME by stringDirective(description = " The name of the main file" )
371
+
372
+ val RENDER_IS_PUBLIC_API by directive(description = " Render `isPublicApi` attribute for symbols" )
366
373
}
367
374
368
375
enum class PrettyRendererOption (val transformation : (KaDeclarationRenderer ) -> KaDeclarationRenderer ) {
0 commit comments