From f6ac2b0f0a0183171aa2f6806ec67d8d21692a36 Mon Sep 17 00:00:00 2001 From: "sebastian.sellmair" Date: Thu, 13 Aug 2020 09:59:39 +0200 Subject: Implement `ContentSourceSet` --- core/src/main/kotlin/model/Documentable.kt | 1 + core/src/main/kotlin/pages/ContentNodes.kt | 45 ++++++++++------ core/src/main/kotlin/pages/ContentSourceSet.kt | 61 ++++++++++++++++++++++ core/src/main/kotlin/pages/PageNodes.kt | 15 +++--- .../documentation/DocumentableTransformer.kt | 3 +- .../kotlin/transformers/pages/PageTransformer.kt | 14 ++++- .../test/kotlin/model/CompositeSourceSetIDTest.kt | 58 ++++++++++++++++++++ core/src/test/kotlin/model/ContentSourceSetTest.kt | 61 ++++++++++++++++++++++ .../src/main/kotlin/renderers/DefaultRenderer.kt | 25 +++++---- .../src/main/kotlin/renderers/html/HtmlRenderer.kt | 58 ++++++++++---------- .../main/kotlin/renderers/html/NavigationPage.kt | 4 +- .../kotlin/resolvers/local/BaseLocationProvider.kt | 9 ++-- .../resolvers/local/DefaultLocationProvider.kt | 3 +- .../kotlin/resolvers/local/LocationProvider.kt | 4 +- .../resolvers/local/MultimoduleLocationProvider.kt | 4 +- .../pages/comments/DocTagToContentConverter.kt | 42 ++++++++------- .../pages/samples/SamplesTransformer.kt | 2 +- .../pages/sourcelinks/SourceLinksTransformer.kt | 2 +- .../documentables/DefaultPageCreator.kt | 2 +- .../documentables/PageContentBuilder.kt | 28 +++++----- plugins/gfm/src/main/kotlin/GfmPlugin.kt | 47 +++++++++++------ .../jetbrains/dokka/javadoc/JavadocPageCreator.kt | 15 +++--- .../javadoc/location/JavadocLocationProvider.kt | 4 +- .../dokka/javadoc/pages/JavadocContentNodes.kt | 23 ++++---- .../dokka/javadoc/renderer/KorteJavadocRenderer.kt | 2 - .../dokka/javadoc/renderer/SearchScriptsCreator.kt | 57 ++++++++++++-------- 26 files changed, 414 insertions(+), 175 deletions(-) create mode 100644 core/src/main/kotlin/pages/ContentSourceSet.kt create mode 100644 core/src/test/kotlin/model/CompositeSourceSetIDTest.kt create mode 100644 core/src/test/kotlin/model/ContentSourceSetTest.kt diff --git a/core/src/main/kotlin/model/Documentable.kt b/core/src/main/kotlin/model/Documentable.kt index 3f91e3cb..33c29ea3 100644 --- a/core/src/main/kotlin/model/Documentable.kt +++ b/core/src/main/kotlin/model/Documentable.kt @@ -14,6 +14,7 @@ abstract class Documentable : WithChildren { abstract val documentation: SourceSetDependent abstract val sourceSets: Set abstract val expectPresentInSet: DokkaSourceSet? + abstract override val children: List override fun toString(): String = "${javaClass.simpleName}($dri)" diff --git a/core/src/main/kotlin/pages/ContentNodes.kt b/core/src/main/kotlin/pages/ContentNodes.kt index 5129dfcf..b82c023f 100644 --- a/core/src/main/kotlin/pages/ContentNodes.kt +++ b/core/src/main/kotlin/pages/ContentNodes.kt @@ -1,6 +1,8 @@ package org.jetbrains.dokka.pages import org.jetbrains.dokka.DokkaConfiguration.DokkaSourceSet +import org.jetbrains.dokka.DokkaSourceSetID +import org.jetbrains.dokka.Platform import org.jetbrains.dokka.links.DRI import org.jetbrains.dokka.model.WithChildren import org.jetbrains.dokka.model.properties.PropertyContainer @@ -10,9 +12,10 @@ data class DCI(val dri: Set, val kind: Kind) { override fun toString() = "$dri[$kind]" } + interface ContentNode : WithExtraProperties, WithChildren { val dci: DCI - val sourceSets: Set + val sourceSets: Set val style: Set