aboutsummaryrefslogtreecommitdiff
path: root/core/src/main/kotlin/Formats/JavaLayoutHtml/JavaLayoutHtmlGenerator.kt
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/main/kotlin/Formats/JavaLayoutHtml/JavaLayoutHtmlGenerator.kt')
-rw-r--r--core/src/main/kotlin/Formats/JavaLayoutHtml/JavaLayoutHtmlGenerator.kt7
1 files changed, 6 insertions, 1 deletions
diff --git a/core/src/main/kotlin/Formats/JavaLayoutHtml/JavaLayoutHtmlGenerator.kt b/core/src/main/kotlin/Formats/JavaLayoutHtml/JavaLayoutHtmlGenerator.kt
index 115e3f76d..9928a8e9e 100644
--- a/core/src/main/kotlin/Formats/JavaLayoutHtml/JavaLayoutHtmlGenerator.kt
+++ b/core/src/main/kotlin/Formats/JavaLayoutHtml/JavaLayoutHtmlGenerator.kt
@@ -32,6 +32,7 @@ class JavaLayoutHtmlFormatGenerator @Inject constructor(
return when (node.kind) {
NodeKind.Module -> URI("/").resolve(node.name + "/")
NodeKind.Package -> tryGetContainerUri(node.getOwnerOrReport())?.resolve(node.name.replace('.', '/') + '/')
+ NodeKind.GroupNode -> tryGetContainerUri(node.getOwnerOrReport())
in NodeKind.classLike -> tryGetContainerUri(node.getOwnerOrReport())?.resolve("${node.classNodeNameWithOuterClass()}.html")
else -> null
}
@@ -81,7 +82,7 @@ class JavaLayoutHtmlFormatGenerator @Inject constructor(
fun buildPackage(node: DocumentationNode, parentDir: File) {
assert(node.kind == NodeKind.Package)
- val members = node.members
+ var members = node.members
val directoryForPackage = parentDir.resolve(node.name.replace('.', File.separatorChar))
directoryForPackage.mkdirsOrFail()
@@ -89,6 +90,9 @@ class JavaLayoutHtmlFormatGenerator @Inject constructor(
createOutputBuilderForNode(node, it).generatePage(Page.PackagePage(node))
}
+ members.filter { it.kind == NodeKind.GroupNode }.forEach {
+ members += it.members
+ }
members.filter { it.kind in NodeKind.classLike }.forEach {
buildClass(it, directoryForPackage)
}
@@ -133,6 +137,7 @@ class JavaLayoutHtmlFormatGenerator @Inject constructor(
val normalized = uri.normalize()
uriToWriter[normalized]?.let { return it }
val file = root.resolve(normalized.path.removePrefix("/"))
+ file.parentFile.mkdirsOrFail()
val writer = file.bufferedWriter()
uriToWriter[normalized] = writer
return writer