aboutsummaryrefslogtreecommitdiff
path: root/plugins/base/src/main/kotlin/translators
diff options
context:
space:
mode:
authorSzymon Świstun <sswistun@virtuslab.com>2020-03-10 18:39:19 +0100
committerPaweł Marks <Kordyjan@users.noreply.github.com>2020-03-16 15:31:20 +0100
commitfb27b386af878a7cd942e97701b66a0d67f7778c (patch)
tree83957e5bbbc9d1b68ff4430546b6b5e6d0b7f094 /plugins/base/src/main/kotlin/translators
parent996feefe717ac623daabaadda71b5b9d2bbe1cf1 (diff)
downloaddokka-fb27b386af878a7cd942e97701b66a0d67f7778c.tar.gz
dokka-fb27b386af878a7cd942e97701b66a0d67f7778c.tar.bz2
dokka-fb27b386af878a7cd942e97701b66a0d67f7778c.zip
Extract inheritance map
Diffstat (limited to 'plugins/base/src/main/kotlin/translators')
-rw-r--r--plugins/base/src/main/kotlin/translators/documentables/DefaultPageCreator.kt11
1 files changed, 11 insertions, 0 deletions
diff --git a/plugins/base/src/main/kotlin/translators/documentables/DefaultPageCreator.kt b/plugins/base/src/main/kotlin/translators/documentables/DefaultPageCreator.kt
index a0b5a072..eba56625 100644
--- a/plugins/base/src/main/kotlin/translators/documentables/DefaultPageCreator.kt
+++ b/plugins/base/src/main/kotlin/translators/documentables/DefaultPageCreator.kt
@@ -1,12 +1,14 @@
package org.jetbrains.dokka.base.translators.documentables
import org.jetbrains.dokka.base.signatures.SignatureProvider
+import org.jetbrains.dokka.base.transformers.documentables.InheritorsInfo
import org.jetbrains.dokka.base.transformers.pages.comments.CommentsToContentConverter
import org.jetbrains.dokka.links.DRI
import org.jetbrains.dokka.model.*
import org.jetbrains.dokka.model.DFunction
import org.jetbrains.dokka.model.doc.Property
import org.jetbrains.dokka.model.doc.TagWrapper
+import org.jetbrains.dokka.model.properties.WithExtraProperties
import org.jetbrains.dokka.pages.*
import org.jetbrains.dokka.utilities.DokkaLogger
@@ -85,6 +87,15 @@ open class DefaultPageCreator(
text(it.briefDocumentation())
}
}
+ (s as? WithExtraProperties<Documentable>)?.let { it.extra[InheritorsInfo] }?.let { inheritors ->
+ val map = inheritors.value.map
+ text("Subclasses:")
+ platformDependentHint(dri = s.dri, platformData = map.keys) {
+ map.keys.forEach { pd ->
+ linkTable(map[pd].orEmpty(), ContentKind.Classlikes, setOf(pd))
+ }
+ }
+ }
}
protected open fun contentForClasslike(c: DClasslike) = contentBuilder.contentFor(c) {