From 35851c4f00bde0b66ce1d9ae8ca02bab761df819 Mon Sep 17 00:00:00 2001 From: Kamil Doległo Date: Tue, 10 Mar 2020 14:18:11 +0100 Subject: Remove nested packages from packages --- core/src/main/kotlin/model/Documentable.kt | 13 ++++--------- .../transformers/documentables/DefaultDocumentableMerger.kt | 1 - .../DefaultDescriptorToDocumentableTranslator.kt | 1 - .../kotlin/translators/documentables/DefaultPageCreator.kt | 3 +-- .../translators/psi/DefaultPsiToDocumentableTranslator.kt | 1 - .../src/main/kotlin/converters/KotlinToJavaConverter.kt | 3 +-- 6 files changed, 6 insertions(+), 16 deletions(-) diff --git a/core/src/main/kotlin/model/Documentable.kt b/core/src/main/kotlin/model/Documentable.kt index d073d39a..8ff5969c 100644 --- a/core/src/main/kotlin/model/Documentable.kt +++ b/core/src/main/kotlin/model/Documentable.kt @@ -59,10 +59,6 @@ interface WithScope { val classlikes: List } -interface WithPackages { - val packages: List -} - interface WithVisibility { val visibility: PlatformDependent } @@ -114,11 +110,11 @@ abstract class Classlike : Documentable(), WithScope, WithVisibility, WithExpect data class Module( override val name: String, - override val packages: List, + val packages: List, override val documentation: PlatformDependent, override val platformData: List, override val extra: PropertyContainer = PropertyContainer.empty() -) : Documentable(), WithPackages, WithExtraProperties { +) : Documentable(), WithExtraProperties { override val dri: DRI = DRI.topLevel override val children: List get() = packages @@ -131,14 +127,13 @@ data class Package( override val functions: List, override val properties: List, override val classlikes: List, - override val packages: List, override val documentation: PlatformDependent, override val platformData: List, override val extra: PropertyContainer = PropertyContainer.empty() -) : Documentable(), WithScope, WithPackages, WithExtraProperties { +) : Documentable(), WithScope, WithExtraProperties { override val name = dri.packageName.orEmpty() override val children: List - get() = (properties + functions + classlikes + packages) as List + get() = (properties + functions + classlikes) as List override fun withNewExtras(newExtras: PropertyContainer) = copy(extra = newExtras) } diff --git a/plugins/base/src/main/kotlin/transformers/documentables/DefaultDocumentableMerger.kt b/plugins/base/src/main/kotlin/transformers/documentables/DefaultDocumentableMerger.kt index 8ae2065b..654238a8 100644 --- a/plugins/base/src/main/kotlin/transformers/documentables/DefaultDocumentableMerger.kt +++ b/plugins/base/src/main/kotlin/transformers/documentables/DefaultDocumentableMerger.kt @@ -97,7 +97,6 @@ fun Package.mergeWith(other: Package): Package = copy( functions = mergeExpectActual(functions + other.functions, Function::mergeWith) { copy(platformData = it) }, properties = mergeExpectActual(properties + other.properties, Property::mergeWith) { copy(platformData = it) }, classlikes = mergeExpectActual(classlikes + other.classlikes, Classlike::mergeWith, Classlike::setPlatformData), - packages = merge(packages + other.packages, Package::mergeWith), documentation = documentation.mergeWith(other.documentation), platformData = (platformData + other.platformData).distinct() ).mergeExtras(this, other) diff --git a/plugins/base/src/main/kotlin/translators/descriptors/DefaultDescriptorToDocumentableTranslator.kt b/plugins/base/src/main/kotlin/translators/descriptors/DefaultDescriptorToDocumentableTranslator.kt index 72ce296d..a1fda688 100644 --- a/plugins/base/src/main/kotlin/translators/descriptors/DefaultDescriptorToDocumentableTranslator.kt +++ b/plugins/base/src/main/kotlin/translators/descriptors/DefaultDescriptorToDocumentableTranslator.kt @@ -78,7 +78,6 @@ private class DokkaDescriptorVisitor( // TODO: close this class and make it priv functions = scope.functions(driWithPlatform), properties = scope.properties(driWithPlatform), classlikes = scope.classlikes(driWithPlatform), - packages = scope.packages(driWithPlatform), documentation = descriptor.resolveDescriptorData(platformData), platformData = listOf(platformData) ) diff --git a/plugins/base/src/main/kotlin/translators/documentables/DefaultPageCreator.kt b/plugins/base/src/main/kotlin/translators/documentables/DefaultPageCreator.kt index d92bec19..c82af936 100644 --- a/plugins/base/src/main/kotlin/translators/documentables/DefaultPageCreator.kt +++ b/plugins/base/src/main/kotlin/translators/documentables/DefaultPageCreator.kt @@ -24,8 +24,7 @@ open class DefaultPageCreator( open fun pageForPackage(p: Package): PackagePageNode = PackagePageNode( p.name, contentForPackage(p), setOf(p.dri), p, p.classlikes.map(::pageForClasslike) + - p.functions.map(::pageForFunction) + - p.packages.map(::pageForPackage) + p.functions.map(::pageForFunction) ) open fun pageForClasslike(c: Classlike): ClasslikePageNode { diff --git a/plugins/base/src/main/kotlin/translators/psi/DefaultPsiToDocumentableTranslator.kt b/plugins/base/src/main/kotlin/translators/psi/DefaultPsiToDocumentableTranslator.kt index 28391741..b07d248d 100644 --- a/plugins/base/src/main/kotlin/translators/psi/DefaultPsiToDocumentableTranslator.kt +++ b/plugins/base/src/main/kotlin/translators/psi/DefaultPsiToDocumentableTranslator.kt @@ -47,7 +47,6 @@ object DefaultPsiToDocumentableTranslator : PsiToDocumentableTranslator { psiFiles.flatMap { psFile -> psFile.classes.map { docParser.parseClasslike(it, dri) } }, - emptyList(), PlatformDependent.empty(), listOf(platformData) ) diff --git a/plugins/kotlin-as-java/src/main/kotlin/converters/KotlinToJavaConverter.kt b/plugins/kotlin-as-java/src/main/kotlin/converters/KotlinToJavaConverter.kt index 4bf75101..2d73786b 100644 --- a/plugins/kotlin-as-java/src/main/kotlin/converters/KotlinToJavaConverter.kt +++ b/plugins/kotlin-as-java/src/main/kotlin/converters/KotlinToJavaConverter.kt @@ -56,8 +56,7 @@ internal fun Package.asJava(): Package { return copy( functions = emptyList(), properties = emptyList(), - classlikes = classlikes.map { it.asJava() } + syntheticClasses, - packages = packages.map { it.asJava() } + classlikes = classlikes.map { it.asJava() } + syntheticClasses ) } -- cgit