aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Kotlin/DocumentationBuilder.kt3
-rw-r--r--test/data/classes/innerClass.kt5
-rw-r--r--test/src/model/ClassTest.kt9
3 files changed, 17 insertions, 0 deletions
diff --git a/src/Kotlin/DocumentationBuilder.kt b/src/Kotlin/DocumentationBuilder.kt
index 04b707af..1ad1e9e8 100644
--- a/src/Kotlin/DocumentationBuilder.kt
+++ b/src/Kotlin/DocumentationBuilder.kt
@@ -267,6 +267,9 @@ class DocumentationBuilder(val session: ResolveSession, val options: Documentati
else -> Kind.Class
}
val node = DocumentationNode(this, kind)
+ if (isInner()) {
+ node.append(DocumentationNode("inner", Content.Empty, Kind.Modifier), DocumentationReference.Kind.Detail)
+ }
node.appendSupertypes(this)
if (getKind() != ClassKind.OBJECT && getKind() != ClassKind.ENUM_ENTRY) {
node.appendChildren(getTypeConstructor().getParameters(), DocumentationReference.Kind.Detail)
diff --git a/test/data/classes/innerClass.kt b/test/data/classes/innerClass.kt
new file mode 100644
index 00000000..3c6e497d
--- /dev/null
+++ b/test/data/classes/innerClass.kt
@@ -0,0 +1,5 @@
+class C {
+ inner class D {
+
+ }
+} \ No newline at end of file
diff --git a/test/src/model/ClassTest.kt b/test/src/model/ClassTest.kt
index 94a0fde0..d607b593 100644
--- a/test/src/model/ClassTest.kt
+++ b/test/src/model/ClassTest.kt
@@ -235,4 +235,13 @@ public class ClassTest {
}
}
}
+
+ Test fun innerClass() {
+ verifyPackageMember("test/data/classes/innerClass.kt") { cls ->
+ val innerClass = cls.members.single { it.name == "D" }
+ val modifiers = innerClass.details(DocumentationNode.Kind.Modifier)
+ assertEquals(3, modifiers.size())
+ assertEquals("inner", modifiers[2].name)
+ }
+ }
}