diff options
Diffstat (limited to 'dokka-subprojects/analysis-java-psi/src/main/kotlin/org')
-rw-r--r-- | dokka-subprojects/analysis-java-psi/src/main/kotlin/org/jetbrains/dokka/analysis/java/parsers/DokkaPsiParser.kt | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/dokka-subprojects/analysis-java-psi/src/main/kotlin/org/jetbrains/dokka/analysis/java/parsers/DokkaPsiParser.kt b/dokka-subprojects/analysis-java-psi/src/main/kotlin/org/jetbrains/dokka/analysis/java/parsers/DokkaPsiParser.kt index b8dabe42..9cfa2bfe 100644 --- a/dokka-subprojects/analysis-java-psi/src/main/kotlin/org/jetbrains/dokka/analysis/java/parsers/DokkaPsiParser.kt +++ b/dokka-subprojects/analysis-java-psi/src/main/kotlin/org/jetbrains/dokka/analysis/java/parsers/DokkaPsiParser.kt @@ -236,6 +236,18 @@ internal class DokkaPsiParser( val implementedInterfacesExtra = ImplementedInterfaces(ancestry.allImplementedInterfaces().toSourceSetDependent()) + // used only for class and enum + val innerModifierExtra = when { + // top level java classes - no `inner` + psi.containingClass == null -> null + // java `static class` = kotlin `class` + psi.hasModifier(JvmModifier.STATIC) -> null + // java `class` = kotlin `inner class` + else -> setOf( + ExtraModifiers.KotlinOnlyModifiers.Inner + ).toSourceSetDependent().toAdditionalModifiers() + } + when { isAnnotationType -> DAnnotation( @@ -295,6 +307,7 @@ internal class DokkaPsiParser( isExpectActual = false, extra = PropertyContainer.withAll( implementedInterfacesExtra, + innerModifierExtra, annotations.toList().toListOfAnnotations().toSourceSetDependent() .toAnnotations() ) @@ -341,6 +354,7 @@ internal class DokkaPsiParser( isExpectActual = false, extra = PropertyContainer.withAll( implementedInterfacesExtra, + innerModifierExtra, annotations.toList().toListOfAnnotations().toSourceSetDependent() .toAnnotations(), ancestry.exceptionInSupertypesOrNull() |