From c661e2fbe27e88d42f0d548d3348812206a49bc2 Mon Sep 17 00:00:00 2001 From: Valentin Kipyatkov Date: Fri, 5 Jun 2015 17:53:16 +0300 Subject: [PATCH] DescriptorRenderer uses FqName.render(), not the opposite --- .../kotlin/renderer/DescriptorRendererImpl.kt | 17 +++-------------- .../jetbrains/kotlin/renderer/RenderingUtils.kt | 16 +++++++++++++++- 2 files changed, 18 insertions(+), 15 deletions(-) diff --git a/core/descriptors/src/org/jetbrains/kotlin/renderer/DescriptorRendererImpl.kt b/core/descriptors/src/org/jetbrains/kotlin/renderer/DescriptorRendererImpl.kt index 477650c54a8..00ab80cd20e 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/renderer/DescriptorRendererImpl.kt +++ b/core/descriptors/src/org/jetbrains/kotlin/renderer/DescriptorRendererImpl.kt @@ -117,20 +117,9 @@ internal class DescriptorRendererImpl( } } - override fun renderFqName(fqName: FqNameBase): String { - return renderFqName(fqName.pathSegments()) - } + override fun renderFqName(fqName: FqNameBase) = renderFqName(fqName.pathSegments()) - private fun renderFqName(pathSegments: List): String { - val buf = StringBuilder() - for (element in pathSegments) { - if (buf.length() != 0) { - buf.append(".") - } - buf.append(renderName(element)) - } - return buf.toString() - } + private fun renderFqName(pathSegments: List) = escape(org.jetbrains.kotlin.renderer.renderFqName(pathSegments)) override fun renderClassifierName(klass: ClassifierDescriptor): String { if (klass is MissingDependencyErrorClass) { @@ -164,7 +153,7 @@ internal class DescriptorRendererImpl( /* TYPES RENDERING */ override fun renderType(type: JetType): String { - return renderNormalizedType(typeNormalizer.invoke(type)) + return renderNormalizedType(typeNormalizer(type)) } private fun renderNormalizedType(type: JetType): String { diff --git a/core/descriptors/src/org/jetbrains/kotlin/renderer/RenderingUtils.kt b/core/descriptors/src/org/jetbrains/kotlin/renderer/RenderingUtils.kt index 882a8e3dedb..09a4d7a71ef 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/renderer/RenderingUtils.kt +++ b/core/descriptors/src/org/jetbrains/kotlin/renderer/RenderingUtils.kt @@ -47,4 +47,18 @@ private fun Name.shouldBeEscaped(): Boolean { return string in KeywordStringsGenerated.KEYWORDS || string.any { !Character.isLetterOrDigit(it) && it != '_' } } -public fun FqNameBase.render(): String = DescriptorRenderer.COMPACT.renderFqName(this) +public fun FqNameBase.render(): String { + return renderFqName(pathSegments()) +} + +public fun renderFqName(pathSegments: List): String { + return StringBuilder { + for (element in pathSegments) { + if (length() > 0) { + append(".") + } + append(element.render()) + } + }.toString() +} +