[AA] Renderer: enable rendering name without symbol
^KTIJ-22404
diff --git a/analysis/analysis-api/src/org/jetbrains/kotlin/analysis/api/renderer/declarations/renderers/KtDeclarationNameRenderer.kt b/analysis/analysis-api/src/org/jetbrains/kotlin/analysis/api/renderer/declarations/renderers/KtDeclarationNameRenderer.kt
index a5f5a05..4490213 100644
--- a/analysis/analysis-api/src/org/jetbrains/kotlin/analysis/api/renderer/declarations/renderers/KtDeclarationNameRenderer.kt
+++ b/analysis/analysis-api/src/org/jetbrains/kotlin/analysis/api/renderer/declarations/renderers/KtDeclarationNameRenderer.kt
@@ -11,28 +11,32 @@
import org.jetbrains.kotlin.analysis.api.symbols.KtClassOrObjectSymbol
import org.jetbrains.kotlin.analysis.api.symbols.markers.KtNamedSymbol
import org.jetbrains.kotlin.analysis.utils.printer.PrettyPrinter
+import org.jetbrains.kotlin.name.Name
import org.jetbrains.kotlin.name.SpecialNames
import org.jetbrains.kotlin.renderer.render
public interface KtDeclarationNameRenderer {
context(KtAnalysisSession, KtDeclarationRenderer)
- public fun renderName(symbol: KtNamedSymbol, printer: PrettyPrinter)
+ public fun renderName(symbol: KtNamedSymbol, printer: PrettyPrinter): Unit = renderName(symbol.name, symbol, printer)
+
+ context(KtAnalysisSession, KtDeclarationRenderer)
+ public fun renderName(name: Name, symbol: KtNamedSymbol?, printer: PrettyPrinter)
public object QUOTED : KtDeclarationNameRenderer {
context(KtAnalysisSession, KtDeclarationRenderer)
- override fun renderName(symbol: KtNamedSymbol, printer: PrettyPrinter) {
+ override fun renderName(name: Name, symbol: KtNamedSymbol?, printer: PrettyPrinter) {
if (symbol is KtClassOrObjectSymbol && symbol.classKind == KtClassKind.COMPANION_OBJECT && symbol.name == SpecialNames.DEFAULT_NAME_FOR_COMPANION_OBJECT)
return
- printer.append(symbol.name.render())
+ printer.append(name.render())
}
}
public object UNQUOTED : KtDeclarationNameRenderer {
context(KtAnalysisSession, KtDeclarationRenderer)
- override fun renderName(symbol: KtNamedSymbol, printer: PrettyPrinter) {
+ override fun renderName(name: Name, symbol: KtNamedSymbol?, printer: PrettyPrinter) {
if (symbol is KtClassOrObjectSymbol && symbol.classKind == KtClassKind.COMPANION_OBJECT && symbol.name == SpecialNames.DEFAULT_NAME_FOR_COMPANION_OBJECT)
return
- printer.append(symbol.name.asString())
+ printer.append(name.asString())
}
}
}