aboutsummaryrefslogtreecommitdiff
path: root/plugins/base/src/main/kotlin/transformers
diff options
context:
space:
mode:
authorKamil Doległo <kamilok1965@interia.pl>2020-06-19 14:08:49 +0200
committerPaweł Marks <pmarks@virtuslab.com>2020-06-25 20:23:58 +0200
commit8cb6efc97f8fa321381c95cc5f85a3ce7bc13c3f (patch)
treefe4e24d9f352199e551bd34ba330c0d2c0acf7af /plugins/base/src/main/kotlin/transformers
parent08f40e2a13006882e8f8425f111b8527e7bbcb0f (diff)
downloaddokka-8cb6efc97f8fa321381c95cc5f85a3ce7bc13c3f.tar.gz
dokka-8cb6efc97f8fa321381c95cc5f85a3ce7bc13c3f.tar.bz2
dokka-8cb6efc97f8fa321381c95cc5f85a3ce7bc13c3f.zip
Remove SourceSetDataCache, rename PassConfiguration to DokkaSourceSet and use it instead of SourceSetData
Diffstat (limited to 'plugins/base/src/main/kotlin/transformers')
-rw-r--r--plugins/base/src/main/kotlin/transformers/documentables/DeprecatedDocumentableFilterTransformer.kt10
-rw-r--r--plugins/base/src/main/kotlin/transformers/documentables/DocumentableVisibilityFilterTransformer.kt36
-rw-r--r--plugins/base/src/main/kotlin/transformers/documentables/EmptyPackagesFilterTransformer.kt8
-rw-r--r--plugins/base/src/main/kotlin/transformers/documentables/InheritorsExtractorTransformer.kt7
-rw-r--r--plugins/base/src/main/kotlin/transformers/documentables/ModuleAndPackageDocumentationTransformer.kt9
-rw-r--r--plugins/base/src/main/kotlin/transformers/documentables/ReportUndocumentedTransformer.kt38
-rw-r--r--plugins/base/src/main/kotlin/transformers/pages/comments/CommentsToContentConverter.kt4
-rw-r--r--plugins/base/src/main/kotlin/transformers/pages/comments/DocTagToContentConverter.kt4
-rw-r--r--plugins/base/src/main/kotlin/transformers/pages/samples/SamplesTransformer.kt13
-rw-r--r--plugins/base/src/main/kotlin/transformers/pages/sourcelinks/SourceLinksTransformer.kt18
10 files changed, 64 insertions, 83 deletions
diff --git a/plugins/base/src/main/kotlin/transformers/documentables/DeprecatedDocumentableFilterTransformer.kt b/plugins/base/src/main/kotlin/transformers/documentables/DeprecatedDocumentableFilterTransformer.kt
index 27557107..109aa640 100644
--- a/plugins/base/src/main/kotlin/transformers/documentables/DeprecatedDocumentableFilterTransformer.kt
+++ b/plugins/base/src/main/kotlin/transformers/documentables/DeprecatedDocumentableFilterTransformer.kt
@@ -8,18 +8,16 @@ import org.jetbrains.dokka.transformers.documentation.PreMergeDocumentableTransf
class DeprecatedDocumentableFilterTransformer(val context: DokkaContext) : PreMergeDocumentableTransformer {
override fun invoke(modules: List<DModule>) = modules.map { original ->
- val passOptions = context.configuration.passesConfigurations.first {
- original.sourceSets.contains(context.sourceSet(it))
- }
+ val sourceSet = original.sourceSets.single()
val packageOptions =
- passOptions.perPackageOptions
+ sourceSet.perPackageOptions
original.let {
- DeprecatedDocumentableFilter(passOptions, packageOptions).processModule(it)
+ DeprecatedDocumentableFilter(sourceSet, packageOptions).processModule(it)
}
}
private class DeprecatedDocumentableFilter(
- val globalOptions: DokkaConfiguration.PassConfiguration,
+ val globalOptions: DokkaConfiguration.DokkaSourceSet,
val packageOptions: List<DokkaConfiguration.PackageOptions>
) {
diff --git a/plugins/base/src/main/kotlin/transformers/documentables/DocumentableVisibilityFilterTransformer.kt b/plugins/base/src/main/kotlin/transformers/documentables/DocumentableVisibilityFilterTransformer.kt
index 0a01680f..c3cc4d38 100644
--- a/plugins/base/src/main/kotlin/transformers/documentables/DocumentableVisibilityFilterTransformer.kt
+++ b/plugins/base/src/main/kotlin/transformers/documentables/DocumentableVisibilityFilterTransformer.kt
@@ -4,15 +4,13 @@ import org.jetbrains.dokka.DokkaConfiguration
import org.jetbrains.dokka.model.*
import org.jetbrains.dokka.plugability.DokkaContext
import org.jetbrains.dokka.transformers.documentation.PreMergeDocumentableTransformer
+import org.jetbrains.dokka.DokkaConfiguration.DokkaSourceSet
class DocumentableVisibilityFilterTransformer(val context: DokkaContext) : PreMergeDocumentableTransformer {
override fun invoke(modules: List<DModule>) = modules.map { original ->
- val passOptions = context.configuration.passesConfigurations.first {
- original.sourceSets.contains(context.sourceSet(it))
- }
- val packageOptions =
- passOptions.perPackageOptions
+ val passOptions = original.sourceSets.single()
+ val packageOptions = passOptions.perPackageOptions
original.let {
DocumentableVisibilityFilter(packageOptions, passOptions).processModule(it)
}
@@ -20,7 +18,7 @@ class DocumentableVisibilityFilterTransformer(val context: DokkaContext) : PreMe
private class DocumentableVisibilityFilter(
val packageOptions: List<DokkaConfiguration.PackageOptions>,
- val globalOptions: DokkaConfiguration.PassConfiguration
+ val globalOptions: DokkaSourceSet
) {
fun Visibility.isAllowedInPackage(packageName: String?) = when (this) {
is JavaVisibility.Public,
@@ -82,14 +80,14 @@ class DocumentableVisibilityFilterTransformer(val context: DokkaContext) : PreMe
return Pair(packagesListChanged, filteredPackages)
}
- private fun <T : WithVisibility> alwaysTrue(a: T, p: SourceSetData) = true
- private fun <T : WithVisibility> alwaysFalse(a: T, p: SourceSetData) = false
+ private fun <T : WithVisibility> alwaysTrue(a: T, p: DokkaSourceSet) = true
+ private fun <T : WithVisibility> alwaysFalse(a: T, p: DokkaSourceSet) = false
- private fun WithVisibility.visibilityForPlatform(data: SourceSetData): Visibility? = visibility[data]
+ private fun WithVisibility.visibilityForPlatform(data: DokkaSourceSet): Visibility? = visibility[data]
private fun <T> T.filterPlatforms(
- additionalCondition: (T, SourceSetData) -> Boolean = ::alwaysTrue,
- alternativeCondition: (T, SourceSetData) -> Boolean = ::alwaysFalse
+ additionalCondition: (T, DokkaSourceSet) -> Boolean = ::alwaysTrue,
+ alternativeCondition: (T, DokkaSourceSet) -> Boolean = ::alwaysFalse
) where T : Documentable, T : WithVisibility =
sourceSets.filter { d ->
visibilityForPlatform(d)?.isAllowedInPackage(dri.packageName) == true &&
@@ -98,9 +96,9 @@ class DocumentableVisibilityFilterTransformer(val context: DokkaContext) : PreMe
}.toSet()
private fun <T> List<T>.transform(
- additionalCondition: (T, SourceSetData) -> Boolean = ::alwaysTrue,
- alternativeCondition: (T, SourceSetData) -> Boolean = ::alwaysFalse,
- recreate: (T, Set<SourceSetData>) -> T
+ additionalCondition: (T, DokkaSourceSet) -> Boolean = ::alwaysTrue,
+ alternativeCondition: (T, DokkaSourceSet) -> Boolean = ::alwaysFalse,
+ recreate: (T, Set<DokkaSourceSet>) -> T
): Pair<Boolean, List<T>> where T : Documentable, T : WithVisibility {
var changed = false
val values = mapNotNull { t ->
@@ -122,7 +120,7 @@ class DocumentableVisibilityFilterTransformer(val context: DokkaContext) : PreMe
private fun filterFunctions(
functions: List<DFunction>,
- additionalCondition: (DFunction, SourceSetData) -> Boolean = ::alwaysTrue
+ additionalCondition: (DFunction, DokkaSourceSet) -> Boolean = ::alwaysTrue
) =
functions.transform(additionalCondition) { original, filteredPlatforms ->
with(original) {
@@ -145,13 +143,13 @@ class DocumentableVisibilityFilterTransformer(val context: DokkaContext) : PreMe
}
}
- private fun hasVisibleAccessorsForPlatform(property: DProperty, data: SourceSetData) =
+ private fun hasVisibleAccessorsForPlatform(property: DProperty, data: DokkaSourceSet) =
property.getter?.visibilityForPlatform(data)?.isAllowedInPackage(property.dri.packageName) == true ||
property.setter?.visibilityForPlatform(data)?.isAllowedInPackage(property.dri.packageName) == true
private fun filterProperties(
properties: List<DProperty>,
- additionalCondition: (DProperty, SourceSetData) -> Boolean = ::alwaysTrue
+ additionalCondition: (DProperty, DokkaSourceSet) -> Boolean = ::alwaysTrue
): Pair<Boolean, List<DProperty>> =
properties.transform(additionalCondition, ::hasVisibleAccessorsForPlatform) { original, filteredPlatforms ->
with(original) {
@@ -174,7 +172,7 @@ class DocumentableVisibilityFilterTransformer(val context: DokkaContext) : PreMe
}
}
- private fun filterEnumEntries(entries: List<DEnumEntry>, filteredPlatforms: Set<SourceSetData>) =
+ private fun filterEnumEntries(entries: List<DEnumEntry>, filteredPlatforms: Set<DokkaSourceSet>) =
entries.mapNotNull { entry ->
if (filteredPlatforms.containsAll(entry.sourceSets)) entry
else {
@@ -196,7 +194,7 @@ class DocumentableVisibilityFilterTransformer(val context: DokkaContext) : PreMe
private fun filterClasslikes(
classlikeList: List<DClasslike>,
- additionalCondition: (DClasslike, SourceSetData) -> Boolean = ::alwaysTrue
+ additionalCondition: (DClasslike, DokkaSourceSet) -> Boolean = ::alwaysTrue
): Pair<Boolean, List<DClasslike>> {
var classlikesListChanged = false
val filteredClasslikes: List<DClasslike> = classlikeList.mapNotNull {
diff --git a/plugins/base/src/main/kotlin/transformers/documentables/EmptyPackagesFilterTransformer.kt b/plugins/base/src/main/kotlin/transformers/documentables/EmptyPackagesFilterTransformer.kt
index 6b29531c..3fd0081a 100644
--- a/plugins/base/src/main/kotlin/transformers/documentables/EmptyPackagesFilterTransformer.kt
+++ b/plugins/base/src/main/kotlin/transformers/documentables/EmptyPackagesFilterTransformer.kt
@@ -3,22 +3,18 @@ package org.jetbrains.dokka.base.transformers.documentables
import org.jetbrains.dokka.DokkaConfiguration
import org.jetbrains.dokka.model.DModule
import org.jetbrains.dokka.model.DPackage
-import org.jetbrains.dokka.model.sourceSet
import org.jetbrains.dokka.plugability.DokkaContext
import org.jetbrains.dokka.transformers.documentation.PreMergeDocumentableTransformer
class EmptyPackagesFilterTransformer(val context: DokkaContext) : PreMergeDocumentableTransformer {
override fun invoke(modules: List<DModule>): List<DModule> = modules.map { original ->
- val passOptions = context.configuration.passesConfigurations.first {
- original.sourceSets.contains(context.sourceSet(it))
- }
original.let {
- EmptyPackagesFilter(passOptions).processModule(it)
+ EmptyPackagesFilter(original.sourceSets.single()).processModule(it)
}
}
private class EmptyPackagesFilter(
- val passOptions: DokkaConfiguration.PassConfiguration
+ val passOptions: DokkaConfiguration.DokkaSourceSet
) {
fun DPackage.shouldBeSkipped() = passOptions.skipEmptyPackages &&
functions.isEmpty() &&
diff --git a/plugins/base/src/main/kotlin/transformers/documentables/InheritorsExtractorTransformer.kt b/plugins/base/src/main/kotlin/transformers/documentables/InheritorsExtractorTransformer.kt
index 15ffc08a..f1bccd66 100644
--- a/plugins/base/src/main/kotlin/transformers/documentables/InheritorsExtractorTransformer.kt
+++ b/plugins/base/src/main/kotlin/transformers/documentables/InheritorsExtractorTransformer.kt
@@ -5,13 +5,14 @@ import org.jetbrains.dokka.model.*
import org.jetbrains.dokka.model.properties.ExtraProperty
import org.jetbrains.dokka.model.properties.MergeStrategy
import org.jetbrains.dokka.plugability.DokkaContext
+import org.jetbrains.dokka.DokkaConfiguration.DokkaSourceSet
import org.jetbrains.dokka.transformers.documentation.DocumentableTransformer
class InheritorsExtractorTransformer : DocumentableTransformer {
override fun invoke(original: DModule, context: DokkaContext): DModule =
original.generateInheritanceMap().let { inheritanceMap -> original.appendInheritors(inheritanceMap) as DModule }
- private fun <T : Documentable> T.appendInheritors(inheritanceMap: Map<SourceSetData, Map<DRI, List<DRI>>>): Documentable =
+ private fun <T : Documentable> T.appendInheritors(inheritanceMap: Map<DokkaSourceSet, Map<DRI, List<DRI>>>): Documentable =
InheritorsInfo(inheritanceMap.getForDRI(dri)).let { info ->
when (this) {
is DModule -> copy(packages = packages.map { it.appendInheritors(inheritanceMap) as DPackage })
@@ -45,7 +46,7 @@ class InheritorsExtractorTransformer : DocumentableTransformer {
private fun InheritorsInfo.isNotEmpty() = this.value.values.fold(0) { acc, list -> acc + list.size } > 0
- private fun Map<SourceSetData, Map<DRI, List<DRI>>>.getForDRI(dri: DRI) =
+ private fun Map<DokkaSourceSet, Map<DRI, List<DRI>>>.getForDRI(dri: DRI) =
map { (v, k) ->
v to k[dri]
}.map { (k, v) -> k to v.orEmpty() }.toMap()
@@ -57,7 +58,7 @@ class InheritorsExtractorTransformer : DocumentableTransformer {
.groupBy({ it.first }) { it.second }.map { (k2, v2) -> k2 to v2.flatten() }.toMap()
}.filter { it.second.values.isNotEmpty() }.toMap()
- private fun <T : Documentable> T.getInheritanceEntriesRec(): List<Pair<SourceSetData, List<Pair<DRI, DRI>>>> =
+ private fun <T : Documentable> T.getInheritanceEntriesRec(): List<Pair<DokkaSourceSet, List<Pair<DRI, DRI>>>> =
this.toInheritanceEntries() + children.flatMap { it.getInheritanceEntriesRec() }
private fun <T : Documentable> T.toInheritanceEntries() =
diff --git a/plugins/base/src/main/kotlin/transformers/documentables/ModuleAndPackageDocumentationTransformer.kt b/plugins/base/src/main/kotlin/transformers/documentables/ModuleAndPackageDocumentationTransformer.kt
index 63232793..1f718a7c 100644
--- a/plugins/base/src/main/kotlin/transformers/documentables/ModuleAndPackageDocumentationTransformer.kt
+++ b/plugins/base/src/main/kotlin/transformers/documentables/ModuleAndPackageDocumentationTransformer.kt
@@ -3,9 +3,8 @@ package org.jetbrains.dokka.base.transformers.documentables
import org.jetbrains.dokka.analysis.EnvironmentAndFacade
import org.jetbrains.dokka.analysis.KotlinAnalysis
import org.jetbrains.dokka.model.DModule
-import org.jetbrains.dokka.model.SourceSetData
import org.jetbrains.dokka.model.doc.DocumentationNode
-import org.jetbrains.dokka.model.sourceSet
+import org.jetbrains.dokka.DokkaConfiguration.DokkaSourceSet
import org.jetbrains.dokka.base.parsers.MarkdownParser
import org.jetbrains.dokka.model.SourceSetDependent
import org.jetbrains.dokka.plugability.DokkaContext
@@ -23,9 +22,9 @@ internal class ModuleAndPackageDocumentationTransformer(
override fun invoke(modules: List<DModule>): List<DModule> {
val modulesAndPackagesDocumentation =
- context.configuration.passesConfigurations
+ context.configuration.sourceSets
.map {
- Pair(it.moduleName, context.sourceSet(it)) to
+ Pair(it.moduleName, it) to
it.includes.map { Paths.get(it) }
.also {
it.forEach {
@@ -101,7 +100,7 @@ internal class ModuleAndPackageDocumentationTransformer(
}
}
- private fun mergeDocumentation(origin: Map<SourceSetData, DocumentationNode>, new: Map<SourceSetData, DocumentationNode>) =
+ private fun mergeDocumentation(origin: Map<DokkaSourceSet, DocumentationNode>, new: Map<DokkaSourceSet, DocumentationNode>) =
(origin.asSequence() + new.asSequence())
.distinct()
.groupBy({ it.key }, { it.value })
diff --git a/plugins/base/src/main/kotlin/transformers/documentables/ReportUndocumentedTransformer.kt b/plugins/base/src/main/kotlin/transformers/documentables/ReportUndocumentedTransformer.kt
index 0b47345d..2ebd4c62 100644
--- a/plugins/base/src/main/kotlin/transformers/documentables/ReportUndocumentedTransformer.kt
+++ b/plugins/base/src/main/kotlin/transformers/documentables/ReportUndocumentedTransformer.kt
@@ -1,7 +1,7 @@
package org.jetbrains.dokka.base.transformers.documentables
import org.jetbrains.dokka.DokkaConfiguration
-import org.jetbrains.dokka.DokkaConfiguration.PassConfiguration
+import org.jetbrains.dokka.DokkaConfiguration.DokkaSourceSet
import org.jetbrains.dokka.analysis.DescriptorDocumentableSource
import org.jetbrains.dokka.model.*
import org.jetbrains.dokka.plugability.DokkaContext
@@ -26,12 +26,11 @@ internal class ReportUndocumentedTransformer : DocumentableTransformer {
}
private fun shouldBeReportedIfNotDocumented(
- documentable: Documentable, sourceSet: SourceSetData, context: DokkaContext
+ documentable: Documentable, sourceSet: DokkaSourceSet, context: DokkaContext
): Boolean {
- val passConfiguration = passConfiguration(context, sourceSet)
- val packageOptionsOrNull = packageOptionsOrNull(passConfiguration, documentable)
+ val packageOptionsOrNull = packageOptionsOrNull(sourceSet, documentable)
- if (!(packageOptionsOrNull?.reportUndocumented ?: passConfiguration.reportUndocumented)) {
+ if (!(packageOptionsOrNull?.reportUndocumented ?: sourceSet.reportUndocumented)) {
return false
}
@@ -61,7 +60,7 @@ internal class ReportUndocumentedTransformer : DocumentableTransformer {
private fun reportIfUndocumented(
context: DokkaContext,
documentable: Documentable,
- sourceSet: SourceSetData
+ sourceSet: DokkaSourceSet
) {
if (isUndocumented(documentable, sourceSet)) {
val documentableDescription = with(documentable) {
@@ -94,14 +93,14 @@ internal class ReportUndocumentedTransformer : DocumentableTransformer {
}
}
- private fun isUndocumented(documentable: Documentable, sourceSet: SourceSetData): Boolean {
- fun resolveDependentSourceSets(sourceSet: SourceSetData): List<SourceSetData> {
+ private fun isUndocumented(documentable: Documentable, sourceSet: DokkaSourceSet): Boolean {
+ fun resolveDependentSourceSets(sourceSet: DokkaSourceSet): List<DokkaSourceSet> {
return sourceSet.dependentSourceSets.mapNotNull { sourceSetID ->
documentable.sourceSets.singleOrNull { it.sourceSetID == sourceSetID }
}
}
- fun withAllDependentSourceSets(sourceSet: SourceSetData): Sequence<SourceSetData> {
+ fun withAllDependentSourceSets(sourceSet: DokkaSourceSet): Sequence<DokkaSourceSet> {
return sequence {
yield(sourceSet)
for (dependentSourceSet in resolveDependentSourceSets(sourceSet)) {
@@ -120,25 +119,16 @@ internal class ReportUndocumentedTransformer : DocumentableTransformer {
return documentable.isConstructor
}
- private fun passConfiguration(context: DokkaContext, sourceSet: SourceSetData): PassConfiguration {
- val passes = context.configuration.passesConfigurations.filter { configuration ->
- configuration.sourceSetID == sourceSet.sourceSetID
- }
- if (passes.size > 1)
- context.logger.error("Expected one passConfiguration with ID: ${sourceSet.sourceSetID} found: ${passes.size} in [${passes.joinToString { it.moduleName }}]")
- return passes.first()
- }
-
- private fun isFakeOverride(documentable: Documentable, sourceSet: SourceSetData): Boolean {
+ private fun isFakeOverride(documentable: Documentable, sourceSet: DokkaSourceSet): Boolean {
return callableMemberDescriptorOrNull(documentable, sourceSet)?.kind == FAKE_OVERRIDE
}
- private fun isSynthesized(documentable: Documentable, sourceSet: SourceSetData): Boolean {
+ private fun isSynthesized(documentable: Documentable, sourceSet: DokkaSourceSet): Boolean {
return callableMemberDescriptorOrNull(documentable, sourceSet)?.kind == SYNTHESIZED
}
private fun callableMemberDescriptorOrNull(
- documentable: Documentable, sourceSet: SourceSetData
+ documentable: Documentable, sourceSet: DokkaSourceSet
): CallableMemberDescriptor? {
if (documentable is WithExpectActual) {
return documentable.sources[sourceSet]
@@ -149,7 +139,7 @@ internal class ReportUndocumentedTransformer : DocumentableTransformer {
return null
}
- private fun isPrivateOrInternalApi(documentable: Documentable, sourceSet: SourceSetData): Boolean {
+ private fun isPrivateOrInternalApi(documentable: Documentable, sourceSet: DokkaSourceSet): Boolean {
return when (documentable.safeAs<WithVisibility>()?.visibility?.get(sourceSet)) {
KotlinVisibility.Public -> false
KotlinVisibility.Private -> true
@@ -164,11 +154,11 @@ internal class ReportUndocumentedTransformer : DocumentableTransformer {
}
private fun packageOptionsOrNull(
- passConfiguration: PassConfiguration,
+ dokkaSourceSet: DokkaSourceSet,
documentable: Documentable
): DokkaConfiguration.PackageOptions? {
val packageName = documentable.dri.packageName ?: return null
- return passConfiguration.perPackageOptions
+ return dokkaSourceSet.perPackageOptions
.filter { packageOptions -> packageName.startsWith(packageOptions.prefix) }
.maxBy { packageOptions -> packageOptions.prefix.length }
}
diff --git a/plugins/base/src/main/kotlin/transformers/pages/comments/CommentsToContentConverter.kt b/plugins/base/src/main/kotlin/transformers/pages/comments/CommentsToContentConverter.kt
index cb74441e..fa9ce37e 100644
--- a/plugins/base/src/main/kotlin/transformers/pages/comments/CommentsToContentConverter.kt
+++ b/plugins/base/src/main/kotlin/transformers/pages/comments/CommentsToContentConverter.kt
@@ -1,6 +1,6 @@
package org.jetbrains.dokka.base.transformers.pages.comments
-import org.jetbrains.dokka.model.SourceSetData
+import org.jetbrains.dokka.DokkaConfiguration.DokkaSourceSet
import org.jetbrains.dokka.model.doc.DocTag
import org.jetbrains.dokka.model.properties.PropertyContainer
import org.jetbrains.dokka.pages.*
@@ -9,7 +9,7 @@ interface CommentsToContentConverter {
fun buildContent(
docTag: DocTag,
dci: DCI,
- platforms: Set<SourceSetData>,
+ sourceSets: Set<DokkaSourceSet>,
styles: Set<Style> = emptySet(),
extras: PropertyContainer<ContentNode> = PropertyContainer.empty()
): List<ContentNode>
diff --git a/plugins/base/src/main/kotlin/transformers/pages/comments/DocTagToContentConverter.kt b/plugins/base/src/main/kotlin/transformers/pages/comments/DocTagToContentConverter.kt
index be1217db..14f3a996 100644
--- a/plugins/base/src/main/kotlin/transformers/pages/comments/DocTagToContentConverter.kt
+++ b/plugins/base/src/main/kotlin/transformers/pages/comments/DocTagToContentConverter.kt
@@ -1,6 +1,6 @@
package org.jetbrains.dokka.base.transformers.pages.comments
-import org.jetbrains.dokka.model.SourceSetData
+import org.jetbrains.dokka.DokkaConfiguration.DokkaSourceSet
import org.jetbrains.dokka.model.doc.*
import org.jetbrains.dokka.model.properties.PropertyContainer
import org.jetbrains.dokka.pages.*
@@ -9,7 +9,7 @@ object DocTagToContentConverter : CommentsToContentConverter {
override fun buildContent(
docTag: DocTag,
dci: DCI,
- sourceSets: Set<SourceSetData>,
+ sourceSets: Set<DokkaSourceSet>,
styles: Set<Style>,
extra: PropertyContainer<ContentNode>
): List<ContentNode> {
diff --git a/plugins/base/src/main/kotlin/transformers/pages/samples/SamplesTransformer.kt b/plugins/base/src/main/kotlin/transformers/pages/samples/SamplesTransformer.kt
index 0d133a65..a40f2f53 100644
--- a/plugins/base/src/main/kotlin/transformers/pages/samples/SamplesTransformer.kt
+++ b/plugins/base/src/main/kotlin/transformers/pages/samples/SamplesTransformer.kt
@@ -8,10 +8,9 @@ import org.jetbrains.dokka.analysis.DokkaResolutionFacade
import org.jetbrains.dokka.analysis.EnvironmentAndFacade
import org.jetbrains.dokka.base.renderers.platforms
import org.jetbrains.dokka.links.DRI
-import org.jetbrains.dokka.model.SourceSetData
+import org.jetbrains.dokka.DokkaConfiguration.DokkaSourceSet
import org.jetbrains.dokka.model.doc.Sample
import org.jetbrains.dokka.model.properties.PropertyContainer
-import org.jetbrains.dokka.model.sourceSet
import org.jetbrains.dokka.pages.*
import org.jetbrains.dokka.plugability.DokkaContext
import org.jetbrains.dokka.transformers.pages.PageTransformer
@@ -40,8 +39,8 @@ abstract class SamplesTransformer(val context: DokkaContext) : PageTransformer {
}
}
- private fun setUpAnalysis(context: DokkaContext) = context.configuration.passesConfigurations.map {
- context.sourceSet(it) to AnalysisEnvironment(DokkaMessageCollector(context.logger), it.analysisPlatform).run {
+ private fun setUpAnalysis(context: DokkaContext) = context.configuration.sourceSets.map {
+ it to AnalysisEnvironment(DokkaMessageCollector(context.logger), it.analysisPlatform).run {
if (analysisPlatform == Platform.jvm) {
addClasspath(PathUtil.getJdkClassesRootsFromCurrentJre())
}
@@ -59,9 +58,9 @@ abstract class SamplesTransformer(val context: DokkaContext) : PageTransformer {
private fun ContentNode.addSample(
contentPage: ContentPage,
- platform: SourceSetData,
+ platform: DokkaSourceSet,
fqName: String,
- analysis: Map<SourceSetData, EnvironmentAndFacade>
+ analysis: Map<DokkaSourceSet, EnvironmentAndFacade>
): ContentNode {
val facade = analysis[platform]?.facade
?: return this.also { context.logger.warn("Cannot resolve facade for platform ${platform.moduleName}") }
@@ -110,7 +109,7 @@ abstract class SamplesTransformer(val context: DokkaContext) : PageTransformer {
return DescriptorToSourceUtils.descriptorToDeclaration(symbol)
}
- private fun contentCode(sourceSets: List<SourceSetData>, dri: Set<DRI>, content: String, language: String) =
+ private fun contentCode(sourceSets: List<DokkaSourceSet>, dri: Set<DRI>, content: String, language: String) =
ContentCode(
children = listOf(
ContentText(
diff --git a/plugins/base/src/main/kotlin/transformers/pages/sourcelinks/SourceLinksTransformer.kt b/plugins/base/src/main/kotlin/transformers/pages/sourcelinks/SourceLinksTransformer.kt
index 7603c80b..42422934 100644
--- a/plugins/base/src/main/kotlin/transformers/pages/sourcelinks/SourceLinksTransformer.kt
+++ b/plugins/base/src/main/kotlin/transformers/pages/sourcelinks/SourceLinksTransformer.kt
@@ -3,11 +3,11 @@ package org.jetbrains.dokka.base.transformers.pages.sourcelinks
import com.intellij.psi.PsiElement
import com.intellij.psi.PsiDocumentManager
import org.jetbrains.dokka.DokkaConfiguration
-import org.jetbrains.dokka.analysis.DescriptorDocumentableSource
-import org.jetbrains.dokka.analysis.PsiDocumentableSource
import org.jetbrains.dokka.base.translators.documentables.PageContentBuilder
-import org.jetbrains.dokka.model.SourceSetData
import org.jetbrains.dokka.model.DocumentableSource
+import org.jetbrains.dokka.DokkaConfiguration.DokkaSourceSet
+import org.jetbrains.dokka.analysis.DescriptorDocumentableSource
+import org.jetbrains.dokka.analysis.PsiDocumentableSource
import org.jetbrains.dokka.model.WithExpectActual
import org.jetbrains.dokka.pages.*
import org.jetbrains.dokka.plugability.DokkaContext
@@ -29,8 +29,8 @@ class SourceLinksTransformer(val context: DokkaContext, val builder: PageContent
}
}
- private fun getSourceLinks() = context.configuration.passesConfigurations
- .flatMap { it.sourceLinks.map { sl -> SourceLink(sl, context.sourceSetCache.getSourceSet(it)) } }
+ private fun getSourceLinks() = context.configuration.sourceSets
+ .flatMap { it.sourceLinks.map { sl -> SourceLink(sl, it) } }
private fun resolveSources(documentable: WithExpectActual) = documentable.sources
.mapNotNull { entry ->
@@ -42,7 +42,7 @@ class SourceLinksTransformer(val context: DokkaContext, val builder: PageContent
}
}
- private fun ContentPage.addSourcesContent(sources: List<Pair<SourceSetData, String>>) = builder
+ private fun ContentPage.addSourcesContent(sources: List<Pair<DokkaSourceSet, String>>) = builder
.buildSourcesContent(this, sources)
.let {
this.modified(
@@ -52,7 +52,7 @@ class SourceLinksTransformer(val context: DokkaContext, val builder: PageContent
private fun PageContentBuilder.buildSourcesContent(
node: ContentPage,
- sources: List<Pair<SourceSetData, String>>
+ sources: List<Pair<DokkaSourceSet, String>>
) = contentFor(
node.dri.first(),
node.documentable!!.sourceSets.toSet()
@@ -121,8 +121,8 @@ class SourceLinksTransformer(val context: DokkaContext, val builder: PageContent
}
}
-data class SourceLink(val path: String, val url: String, val lineSuffix: String?, val sourceSetData: SourceSetData) {
- constructor(sourceLinkDefinition: DokkaConfiguration.SourceLinkDefinition, sourceSetData: SourceSetData) : this(
+data class SourceLink(val path: String, val url: String, val lineSuffix: String?, val sourceSetData: DokkaSourceSet) {
+ constructor(sourceLinkDefinition: DokkaConfiguration.SourceLinkDefinition, sourceSetData: DokkaSourceSet) : this(
sourceLinkDefinition.path, sourceLinkDefinition.url, sourceLinkDefinition.lineSuffix, sourceSetData
)
}