aboutsummaryrefslogtreecommitdiff
path: root/core/src/main/kotlin/Formats
diff options
context:
space:
mode:
authorSimon Ogorodnik <Simon.Ogorodnik@jetbrains.com>2017-02-16 21:28:16 +0300
committerDmitry Jemerov <yole@jetbrains.com>2017-02-23 11:20:13 +0100
commit7fa258873eab770577879e9721c0864449ba1114 (patch)
treefefbab3c102c00aa412dff4341c8160714f0c309 /core/src/main/kotlin/Formats
parent2bd8bdf9dc0a8e48ce558b2eed0c8e8fd4883902 (diff)
downloaddokka-7fa258873eab770577879e9721c0864449ba1114.tar.gz
dokka-7fa258873eab770577879e9721c0864449ba1114.tar.bz2
dokka-7fa258873eab770577879e9721c0864449ba1114.zip
Dokka now can detect and recognize SinceKotlin
Diffstat (limited to 'core/src/main/kotlin/Formats')
-rw-r--r--core/src/main/kotlin/Formats/StructuredFormatService.kt15
1 files changed, 15 insertions, 0 deletions
diff --git a/core/src/main/kotlin/Formats/StructuredFormatService.kt b/core/src/main/kotlin/Formats/StructuredFormatService.kt
index 7896bcd8..1488a4f9 100644
--- a/core/src/main/kotlin/Formats/StructuredFormatService.kt
+++ b/core/src/main/kotlin/Formats/StructuredFormatService.kt
@@ -59,6 +59,13 @@ abstract class StructuredOutputBuilder(val to: StringBuilder,
abstract fun appendText(text: String)
+ open fun appendSinceKotlin(version: String) {
+ appendParagraph {
+ appendText("Available since Kotlin: ")
+ appendCode { appendText(version) }
+ }
+ }
+
open fun appendSymbol(text: String) {
appendText(text)
}
@@ -284,12 +291,14 @@ abstract class StructuredOutputBuilder(val to: StringBuilder,
}
item.appendOverrides()
item.appendDeprecation()
+ item.appendSinceKotlin()
}
// All items have exactly the same documentation, so we can use any item to render it
val item = items.first()
item.details(NodeKind.OverloadGroupNote).forEach {
appendContent(it.content)
}
+
appendContent(item.content.summary)
item.appendDescription()
}
@@ -312,6 +321,12 @@ abstract class StructuredOutputBuilder(val to: StringBuilder,
}
}
+ private fun DocumentationNode.appendSinceKotlin() {
+ val annotation = sinceKotlin ?: return
+ val value = annotation.detail(NodeKind.Parameter).detail(NodeKind.Value)
+ appendSinceKotlin(value.name)
+ }
+
private fun DocumentationNode.appendDeprecation() {
if (deprecation != null) {
val deprecationParameter = deprecation!!.details(NodeKind.Parameter).firstOrNull()