diff --git a/compiler/frontend/src/org/jetbrains/jet/resolve/DescriptorRenderer.java b/compiler/frontend/src/org/jetbrains/jet/resolve/DescriptorRenderer.java index c9cb6cf9cc1..a09b73ef863 100644 --- a/compiler/frontend/src/org/jetbrains/jet/resolve/DescriptorRenderer.java +++ b/compiler/frontend/src/org/jetbrains/jet/resolve/DescriptorRenderer.java @@ -21,6 +21,8 @@ import org.jetbrains.annotations.Nullable; import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.diagnostics.rendering.Renderer; import org.jetbrains.jet.lang.resolve.DescriptorUtils; +import org.jetbrains.jet.lang.resolve.FqName; +import org.jetbrains.jet.lang.resolve.FqNameUnsafe; import org.jetbrains.jet.lang.resolve.scopes.receivers.ReceiverDescriptor; import org.jetbrains.jet.lang.types.JetType; import org.jetbrains.jet.lang.types.TypeProjection; @@ -227,7 +229,8 @@ public class DescriptorRenderer implements Renderer { final DeclarationDescriptor containingDeclaration = declarationDescriptor.getContainingDeclaration(); if (containingDeclaration != null) { - renderFullyQualifiedName(containingDeclaration, stringBuilder); + FqNameUnsafe fqName = DescriptorUtils.getFQName(containingDeclaration); + stringBuilder.append(FqName.ROOT.toUnsafe().equals(fqName) ? "root package" : escape(fqName.getFqName())); } } @@ -244,15 +247,6 @@ public class DescriptorRenderer implements Renderer { return s; } - private void renderFullyQualifiedName(DeclarationDescriptor descriptor, StringBuilder stringBuilder) { - DeclarationDescriptor containingDeclaration = descriptor.getContainingDeclaration(); - if (containingDeclaration != null) { - renderFullyQualifiedName(containingDeclaration, stringBuilder); - stringBuilder.append("."); - } - stringBuilder.append(escape(descriptor.getName())); - } - private class RenderDeclarationDescriptorVisitor extends DeclarationDescriptorVisitor { @Override diff --git a/compiler/testData/renderer/Classes.kt b/compiler/testData/renderer/Classes.kt index ecdd7945e3c..e5e9b52e2fc 100644 --- a/compiler/testData/renderer/Classes.kt +++ b/compiler/testData/renderer/Classes.kt @@ -29,21 +29,21 @@ private enum class TheEnum(val rgb : Int) { VAL1 : TheEnum(0xFF0000) } -//package rendererTest defined in . -//internal final annotation class TheAnnotation defined in ..rendererTest -//public open class TheClass defined in ..rendererTest -// defined in ..rendererTest.TheClass -// defined in ..rendererTest.TheClass -//private final val privateVal : jet.Int defined in ..rendererTest.TheClass -//internal final val shouldBeFinal : jet.Int defined in ..rendererTest.TheClass -//protected abstract fun foo() : Unit defined in ..rendererTest.TheClass -//private final class Inner defined in ..rendererTest.TheClass -//internal final class InternalClass defined in ..rendererTest -//internal trait TheTrait defined in ..rendererTest -//internal abstract fun abstractFun() : Unit defined in ..rendererTest.TheTrait -//object : rendererTest.TheClass defined in ..rendererTest.TheTrait -//internal final fun classObjectFunction() : jet.Int defined in ..rendererTest.TheTrait. -//private final enum class TheEnum defined in ..rendererTest -//value-parameter val rgb : jet.Int defined in ..rendererTest.TheEnum. -//internal final class VAL1 : rendererTest.TheEnum defined in ..rendererTest.TheEnum.class-object-for-TheEnum -//internal final val VAL1 : rendererTest.TheEnum.class-object-for-TheEnum.VAL1 defined in ..rendererTest.TheEnum.class-object-for-TheEnum +//package rendererTest defined in root package +//internal final annotation class TheAnnotation defined in rendererTest +//public open class TheClass defined in rendererTest +// defined in rendererTest.TheClass +// defined in rendererTest.TheClass +//private final val privateVal : jet.Int defined in rendererTest.TheClass +//internal final val shouldBeFinal : jet.Int defined in rendererTest.TheClass +//protected abstract fun foo() : Unit defined in rendererTest.TheClass +//private final class Inner defined in rendererTest.TheClass +//internal final class InternalClass defined in rendererTest +//internal trait TheTrait defined in rendererTest +//internal abstract fun abstractFun() : Unit defined in rendererTest.TheTrait +//object : rendererTest.TheClass defined in rendererTest.TheTrait +//internal final fun classObjectFunction() : jet.Int defined in rendererTest.TheTrait. +//private final enum class TheEnum defined in rendererTest +//value-parameter val rgb : jet.Int defined in rendererTest.TheEnum. +//internal final class VAL1 : rendererTest.TheEnum defined in rendererTest.TheEnum.class-object-for-TheEnum +//internal final val VAL1 : rendererTest.TheEnum.class-object-for-TheEnum.VAL1 defined in rendererTest.TheEnum.class-object-for-TheEnum diff --git a/compiler/testData/renderer/FunctionTypes.kt b/compiler/testData/renderer/FunctionTypes.kt index 425c01d91be..9cb510a4e36 100644 --- a/compiler/testData/renderer/FunctionTypes.kt +++ b/compiler/testData/renderer/FunctionTypes.kt @@ -8,11 +8,11 @@ var v6 : Int.(String, Int) -> Unit var v7 : ExtensionFunction1 -//internal final var v1 : () -> Unit defined in . -//internal final var v2 : (jet.Int) -> jet.Int defined in . -//internal final var v3 : (jet.Int, #(jet.String, jet.String)) -> jet.String defined in . -//internal final var v4 : (jet.Int) -> jet.String defined in . -//internal final var v4 : (() -> jet.Int, (#(jet.String, jet.String)) -> Unit) -> jet.String defined in . -//internal final var v5 : jet.Int.() -> jet.Int defined in . -//internal final var v6 : jet.Int.(jet.String, jet.Int) -> Unit defined in . -//internal final var v7 : jet.Int.(jet.String) -> jet.Boolean defined in . +//internal final var v1 : () -> Unit defined in root package +//internal final var v2 : (jet.Int) -> jet.Int defined in root package +//internal final var v3 : (jet.Int, #(jet.String, jet.String)) -> jet.String defined in root package +//internal final var v4 : (jet.Int) -> jet.String defined in root package +//internal final var v4 : (() -> jet.Int, (#(jet.String, jet.String)) -> Unit) -> jet.String defined in root package +//internal final var v5 : jet.Int.() -> jet.Int defined in root package +//internal final var v6 : jet.Int.(jet.String, jet.Int) -> Unit defined in root package +//internal final var v7 : jet.Int.(jet.String) -> jet.Boolean defined in root package diff --git a/compiler/testData/renderer/GlobalFunctions.kt b/compiler/testData/renderer/GlobalFunctions.kt index 21a4d40204a..1a415f1b80f 100644 --- a/compiler/testData/renderer/GlobalFunctions.kt +++ b/compiler/testData/renderer/GlobalFunctions.kt @@ -10,12 +10,12 @@ private fun prv(a : String, b : Int = 5) = 5 public fun Int.ext() : Int {} -//package rendererTest defined in . -//public final fun pub() : Unit defined in ..rendererTest -//internal final fun int() : jet.String defined in ..rendererTest -//internal final fun int2(val ints : jet.IntArray) : jet.Int defined in ..rendererTest -//value-parameter vararg val ints : jet.IntArray defined in ..rendererTest.int2 -//private final fun prv(val a : jet.String, val b : jet.Int = ...) : jet.Int defined in ..rendererTest -//value-parameter val a : jet.String defined in ..rendererTest.prv -//value-parameter val b : jet.Int defined in ..rendererTest.prv -//public final fun jet.Int.ext() : jet.Int defined in ..rendererTest \ No newline at end of file +//package rendererTest defined in root package +//public final fun pub() : Unit defined in rendererTest +//internal final fun int() : jet.String defined in rendererTest +//internal final fun int2(val ints : jet.IntArray) : jet.Int defined in rendererTest +//value-parameter vararg val ints : jet.IntArray defined in rendererTest.int2 +//private final fun prv(val a : jet.String, val b : jet.Int = ...) : jet.Int defined in rendererTest +//value-parameter val a : jet.String defined in rendererTest.prv +//value-parameter val b : jet.Int defined in rendererTest.prv +//public final fun jet.Int.ext() : jet.Int defined in rendererTest \ No newline at end of file diff --git a/compiler/testData/renderer/GlobalProperties.kt b/compiler/testData/renderer/GlobalProperties.kt index 943674128cd..25ff60f9d0a 100644 --- a/compiler/testData/renderer/GlobalProperties.kt +++ b/compiler/testData/renderer/GlobalProperties.kt @@ -11,10 +11,10 @@ private var private = 5 public val Int.ext : Int get() {} -//package rendererTest defined in . -//public final val pub : jet.String defined in ..rendererTest -//internal final var int : jet.String defined in ..rendererTest -//internal final val int2 : jet.Int defined in ..rendererTest -//private final var private : jet.Int defined in ..rendererTest -//public final val jet.Int.ext : jet.Int defined in ..rendererTest -//public final fun jet.Int.get-ext() : jet.Int defined in ..rendererTest \ No newline at end of file +//package rendererTest defined in root package +//public final val pub : jet.String defined in rendererTest +//internal final var int : jet.String defined in rendererTest +//internal final val int2 : jet.Int defined in rendererTest +//private final var private : jet.Int defined in rendererTest +//public final val jet.Int.ext : jet.Int defined in rendererTest +//public final fun jet.Int.get-ext() : jet.Int defined in rendererTest \ No newline at end of file diff --git a/compiler/testData/renderer/TupleTypes.kt b/compiler/testData/renderer/TupleTypes.kt index 73f1ecb3e50..184bf00bc9f 100644 --- a/compiler/testData/renderer/TupleTypes.kt +++ b/compiler/testData/renderer/TupleTypes.kt @@ -9,13 +9,13 @@ var v8 : #(Int, String, String) var v9 : Tuple2 var v10 : Tuple3? -//internal final var v1 : Unit defined in . -//internal final var v2 : Unit? defined in . -//internal final var v3 : Unit defined in . -//internal final var v4 : Unit? defined in . -//internal final var v5 : Unit defined in . -//internal final var v6 : #(jet.Int) defined in . -//internal final var v7 : #(jet.Int)? defined in . -//internal final var v8 : #(jet.Int, jet.String, jet.String) defined in . -//internal final var v9 : #(jet.Int, jet.String) defined in . -//internal final var v10 : #(jet.Int, jet.Int, jet.Int)? defined in . +//internal final var v1 : Unit defined in root package +//internal final var v2 : Unit? defined in root package +//internal final var v3 : Unit defined in root package +//internal final var v4 : Unit? defined in root package +//internal final var v5 : Unit defined in root package +//internal final var v6 : #(jet.Int) defined in root package +//internal final var v7 : #(jet.Int)? defined in root package +//internal final var v8 : #(jet.Int, jet.String, jet.String) defined in root package +//internal final var v9 : #(jet.Int, jet.String) defined in root package +//internal final var v10 : #(jet.Int, jet.Int, jet.Int)? defined in root package