aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Jemerov <yole@jetbrains.com>2015-02-16 15:55:49 +0100
committerDmitry Jemerov <yole@jetbrains.com>2015-02-16 15:55:49 +0100
commit17e25efa87dc6eea3b1e098619a07a65f0b3f8e8 (patch)
treee28deac3fbaeec8e9582c9b9ad95397826d38c7e
parent107ef426ad6163d9a97177e6b8d51cd2291f6daf (diff)
downloaddokka-17e25efa87dc6eea3b1e098619a07a65f0b3f8e8.tar.gz
dokka-17e25efa87dc6eea3b1e098619a07a65f0b3f8e8.tar.bz2
dokka-17e25efa87dc6eea3b1e098619a07a65f0b3f8e8.zip
represent java.lang.Object as 'Any'
-rw-r--r--src/Java/JavaDocumentationBuilder.kt5
-rw-r--r--test/data/java/javaLangObject.java5
-rw-r--r--test/src/model/JavaTest.kt7
3 files changed, 16 insertions, 1 deletions
diff --git a/src/Java/JavaDocumentationBuilder.kt b/src/Java/JavaDocumentationBuilder.kt
index f1a9c520..f3cc38f7 100644
--- a/src/Java/JavaDocumentationBuilder.kt
+++ b/src/Java/JavaDocumentationBuilder.kt
@@ -186,7 +186,10 @@ public class JavaDocumentationBuilder(private val options: DocumentationOptions)
private fun mapTypeName(psiType: PsiType): String = when (psiType) {
PsiType.VOID -> "Unit"
is PsiPrimitiveType -> psiType.getCanonicalText().capitalize()
- is PsiClassType -> psiType.getClassName()
+ is PsiClassType -> {
+ val psiClass = psiType.resolve()
+ if (psiClass?.getQualifiedName() == "java.lang.Object") "Any" else psiType.getClassName()
+ }
is PsiEllipsisType -> mapTypeName(psiType.getComponentType())
is PsiArrayType -> "Array"
else -> psiType.getCanonicalText()
diff --git a/test/data/java/javaLangObject.java b/test/data/java/javaLangObject.java
new file mode 100644
index 00000000..8f16629c
--- /dev/null
+++ b/test/data/java/javaLangObject.java
@@ -0,0 +1,5 @@
+package test;
+
+class Test {
+ public Object fn() { return null; }
+}
diff --git a/test/src/model/JavaTest.kt b/test/src/model/JavaTest.kt
index ff04c90c..cdb0ba44 100644
--- a/test/src/model/JavaTest.kt
+++ b/test/src/model/JavaTest.kt
@@ -160,4 +160,11 @@ public class JavaTest {
}
}
}
+
+ Test fun javaLangObject() {
+ verifyPackageMember("test/data/java/javaLangObject.java") { cls ->
+ val fn = cls.members(DocumentationNode.Kind.Function).single()
+ assertEquals("Any", fn.detail(DocumentationNode.Kind.Type).name)
+ }
+ }
}