diff options
author | Paweł Marks <pmarks@virtuslab.com> | 2020-03-04 00:29:36 +0100 |
---|---|---|
committer | Paweł Marks <Kordyjan@users.noreply.github.com> | 2020-03-04 14:28:14 +0100 |
commit | 89c33f431a43caa07365ec69b2b57f3b4e9a01c6 (patch) | |
tree | a48238a60970e7ac75efbc4e3ca5f182f6430b8d /plugins/base/src/main/kotlin/translators | |
parent | d08591dea709917553c0d6de024820bb29b328fb (diff) | |
download | dokka-89c33f431a43caa07365ec69b2b57f3b4e9a01c6.tar.gz dokka-89c33f431a43caa07365ec69b2b57f3b4e9a01c6.tar.bz2 dokka-89c33f431a43caa07365ec69b2b57f3b4e9a01c6.zip |
Big refactor of signature provider
Diffstat (limited to 'plugins/base/src/main/kotlin/translators')
-rw-r--r-- | plugins/base/src/main/kotlin/translators/documentables/DefaultPageCreator.kt | 10 | ||||
-rw-r--r-- | plugins/base/src/main/kotlin/translators/documentables/PageContentBuilder.kt | 15 |
2 files changed, 10 insertions, 15 deletions
diff --git a/plugins/base/src/main/kotlin/translators/documentables/DefaultPageCreator.kt b/plugins/base/src/main/kotlin/translators/documentables/DefaultPageCreator.kt index 5f3772ce..d92bec19 100644 --- a/plugins/base/src/main/kotlin/translators/documentables/DefaultPageCreator.kt +++ b/plugins/base/src/main/kotlin/translators/documentables/DefaultPageCreator.kt @@ -62,12 +62,12 @@ open class DefaultPageCreator( ) = contentBuilder.contentFor(s as Documentable) { block("Types", 2, ContentKind.Classlikes, s.classlikes, platformData.toSet()) { link(it.name.orEmpty(), it.dri) - +signature(it) + +buildSignature(it) text(it.briefDocTagString) } block("Functions", 2, ContentKind.Functions, s.functions, platformData.toSet()) { link(it.name, it.dri) - +signature(it) + +buildSignature(it) text(it.briefDocTagString) } block("Properties", 2, ContentKind.Properties, s.properties, platformData.toSet()) { @@ -77,13 +77,13 @@ open class DefaultPageCreator( } protected open fun contentForClasslike(c: Classlike) = contentBuilder.contentFor(c) { - +signature(c) + +buildSignature(c) +contentForComments(c) if (c is WithConstructors) { block("Constructors", 2, ContentKind.Constructors, c.constructors, c.platformData.toSet()) { link(it.name, it.dri) - signature(it) + +buildSignature(it) text(it.briefDocTagString) } } @@ -107,7 +107,7 @@ open class DefaultPageCreator( protected open fun contentForFunction(f: Function) = contentBuilder.contentFor(f) { header(1) { text(f.name) } - +signature(f) + +buildSignature(f) +contentForComments(f) block("Parameters", 2, ContentKind.Parameters, f.children, f.platformData.toSet()) { text(it.name ?: "<receiver>") diff --git a/plugins/base/src/main/kotlin/translators/documentables/PageContentBuilder.kt b/plugins/base/src/main/kotlin/translators/documentables/PageContentBuilder.kt index 0c08241f..369c9c81 100644 --- a/plugins/base/src/main/kotlin/translators/documentables/PageContentBuilder.kt +++ b/plugins/base/src/main/kotlin/translators/documentables/PageContentBuilder.kt @@ -93,13 +93,7 @@ open class PageContentBuilder( contents += createText(text, kind, platformData, styles, extras) } - fun signature(d: Documentable) = ContentGroup( - signatureProvider.signature(d), - DCI(setOf(d.dri), ContentKind.Symbol), - d.platformData.toSet(), - mainStyles, - mainExtras - ) + fun buildSignature(d: Documentable) = signatureProvider.signature(d) fun linkTable( elements: List<DRI>, @@ -152,16 +146,17 @@ open class PageContentBuilder( prefix: String = "", suffix: String = "", separator: String = ", ", + platformData: Set<PlatformData> = mainPlatformData, // TODO: children should be aware of this platform data operation: DocumentableContentBuilder.(T) -> Unit ) { if (elements.isNotEmpty()) { - if (prefix.isNotEmpty()) text(prefix) + if (prefix.isNotEmpty()) text(prefix, platformData = platformData) elements.dropLast(1).forEach { operation(it) - text(separator) + text(separator, platformData = platformData) } operation(elements.last()) - if (suffix.isNotEmpty()) text(suffix) + if (suffix.isNotEmpty()) text(suffix, platformData = platformData) } } |