diff options
| author | Kamil Doległo <kamilok1965@interia.pl> | 2020-08-14 13:25:48 +0200 |
|---|---|---|
| committer | Sebastian Sellmair <34319766+sellmair@users.noreply.github.com> | 2020-08-19 13:34:10 +0200 |
| commit | c3e979270956b8df9380cf9eea067048f325dbd3 (patch) | |
| tree | c4ebc524e68aabdf1f8486f2785ee783c28c66af /plugins/base/src/main/kotlin/renderers/html | |
| parent | cd52a20e56abcb15ebc11659bc79cac6a9b56a75 (diff) | |
| download | dokka-c3e979270956b8df9380cf9eea067048f325dbd3.tar.gz dokka-c3e979270956b8df9380cf9eea067048f325dbd3.tar.bz2 dokka-c3e979270956b8df9380cf9eea067048f325dbd3.zip | |
Replace !! with some meaningful messages
Diffstat (limited to 'plugins/base/src/main/kotlin/renderers/html')
| -rw-r--r-- | plugins/base/src/main/kotlin/renderers/html/HtmlRenderer.kt | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/plugins/base/src/main/kotlin/renderers/html/HtmlRenderer.kt b/plugins/base/src/main/kotlin/renderers/html/HtmlRenderer.kt index d9833e43..0d20e8ac 100644 --- a/plugins/base/src/main/kotlin/renderers/html/HtmlRenderer.kt +++ b/plugins/base/src/main/kotlin/renderers/html/HtmlRenderer.kt @@ -523,11 +523,16 @@ open class HtmlRenderer( } private fun FlowContent.buildLink(to: PageNode, from: PageNode) = - buildLink(locationProvider.resolve(to, from)!!) { + locationProvider.resolve(to, from)?.let { path -> + buildLink(path) { + text(to.name) + } + } ?: span { + attributes["data-unresolved-link"] = to.name.htmlEscape() text(to.name) } - private fun FlowContent.buildAnchor(pointingTo: String) { + fun FlowContent.buildAnchor(pointingTo: String) { span(classes = "anchor-wrapper") { span(classes = "anchor-icon") { attributes["pointing-to"] = pointingTo @@ -551,7 +556,8 @@ open class HtmlRenderer( platforms: List<DisplaySourceSet>, from: PageNode? = null, block: FlowContent.() -> Unit - ) = buildLink(locationProvider.resolve(to, platforms.toSet(), from)!!, block) + ) = locationProvider.resolve(to, platforms.toSet(), from)?.let { buildLink(it, block) } + ?: run { context.logger.error("Cannot resolve path for $to"); block() } override fun buildError(node: ContentNode) { context.logger.error("Unknown ContentNode type: $node") @@ -603,7 +609,7 @@ open class HtmlRenderer( override suspend fun renderPage(page: PageNode) { super.renderPage(page) if (page is ContentPage && page !is ModulePageNode && page !is PackagePageNode) - searchbarDataInstaller.processPage(page, locationProvider.resolve(page)) + searchbarDataInstaller.processPage(page, locationProvider.resolve(page) ?: context.logger.error("Cannot resolve path for ${page.dri}")) } override fun FlowContent.buildText(textNode: ContentText) = |
