diff options
Diffstat (limited to 'core/src/main/kotlin/Formats/JavaLayoutHtml/JavaLayoutHtmlGenerator.kt')
-rw-r--r-- | core/src/main/kotlin/Formats/JavaLayoutHtml/JavaLayoutHtmlGenerator.kt | 7 |
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 |