diff options
Diffstat (limited to 'core')
-rw-r--r-- | core/src/main/kotlin/model/Documentable.kt | 15 | ||||
-rw-r--r-- | core/src/main/kotlin/pages/PageNodes.kt | 5 |
2 files changed, 17 insertions, 3 deletions
diff --git a/core/src/main/kotlin/model/Documentable.kt b/core/src/main/kotlin/model/Documentable.kt index 293b8a30..34ad6c2b 100644 --- a/core/src/main/kotlin/model/Documentable.kt +++ b/core/src/main/kotlin/model/Documentable.kt @@ -111,9 +111,18 @@ data class DPackage( override val sourceSets: Set<DokkaSourceSet> = emptySet(), override val extra: PropertyContainer<DPackage> = PropertyContainer.empty() ) : Documentable(), WithScope, WithExtraProperties<DPackage> { - override val name = dri.packageName.orEmpty() - override val children: List<Documentable> - get() = (properties + functions + classlikes + typealiases) + + val packageName: String = dri.packageName.orEmpty() + + /** + * !!! WARNING !!! + * This name is not guaranteed to be a be a canonical/real package name. + * e.g. this will return a human readable version for root packages. + * Use [packageName] or `dri.packageName` instead to obtain the real packageName + */ + override val name: String = if (packageName.isBlank()) "[root]" else packageName + + override val children: List<Documentable> = properties + functions + classlikes + typealiases override fun withNewExtras(newExtras: PropertyContainer<DPackage>) = copy(extra = newExtras) } diff --git a/core/src/main/kotlin/pages/PageNodes.kt b/core/src/main/kotlin/pages/PageNodes.kt index 176c0993..a91887b4 100644 --- a/core/src/main/kotlin/pages/PageNodes.kt +++ b/core/src/main/kotlin/pages/PageNodes.kt @@ -92,6 +92,11 @@ class PackagePageNode( override val children: List<PageNode>, override val embeddedResources: List<String> = listOf() ) : PackagePage { + + init { + require(name.isNotBlank()) { "PackagePageNode.name cannot be blank" } + } + override fun modified(name: String, children: List<PageNode>): PackagePageNode = modified(name = name, content = this.content, children = children) |