From 2162c39ab389129f437ae49d66ffde4457694d5e Mon Sep 17 00:00:00 2001 From: Toshiaki Kameyama Date: Fri, 26 Jul 2019 11:46:13 +0200 Subject: [PATCH] Quick doc: show default parameter value #KT-19069 Fixed --- .../org/jetbrains/kotlin/idea/KotlinDocumentationProvider.kt | 2 ++ idea/testData/editor/quickDoc/OnMethodUsage.kt | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/KotlinDocumentationProvider.kt b/idea/src/org/jetbrains/kotlin/idea/KotlinDocumentationProvider.kt index 8c4e1a6ec6a..58547a75153 100644 --- a/idea/src/org/jetbrains/kotlin/idea/KotlinDocumentationProvider.kt +++ b/idea/src/org/jetbrains/kotlin/idea/KotlinDocumentationProvider.kt @@ -58,6 +58,7 @@ import org.jetbrains.kotlin.resolve.descriptorUtil.fqNameSafe import org.jetbrains.kotlin.resolve.descriptorUtil.fqNameUnsafe import org.jetbrains.kotlin.resolve.descriptorUtil.getSuperClassNotAny import org.jetbrains.kotlin.resolve.lazy.BodyResolveMode +import org.jetbrains.kotlin.resolve.source.getPsi import org.jetbrains.kotlin.utils.addToStdlib.constant import org.jetbrains.kotlin.utils.addToStdlib.safeAs @@ -178,6 +179,7 @@ open class KotlinDocumentationProviderCompatBase : AbstractDocumentationProvider eachAnnotationOnNewLine = true boldOnlyForNamesInHtml = true excludedTypeAnnotationClasses = NULLABILITY_ANNOTATIONS + defaultParameterValueRenderer = { (it.source.getPsi() as? KtParameter)?.defaultValue?.text ?: "..." } } fun StringBuilder.renderKDoc(contentTag: KDocTag, sections: List) { diff --git a/idea/testData/editor/quickDoc/OnMethodUsage.kt b/idea/testData/editor/quickDoc/OnMethodUsage.kt index c95c404a7da..b761cc6035e 100644 --- a/idea/testData/editor/quickDoc/OnMethodUsage.kt +++ b/idea/testData/editor/quickDoc/OnMethodUsage.kt @@ -4,7 +4,7 @@ Some documentation * @param a Some int * @param b String */ -fun testMethod(a: Int, b: String) { +fun testMethod(a: Int, b: String = "default") { } @@ -14,5 +14,5 @@ fun test() { //INFO:
OnMethodUsage.kt
public fun testMethod( //INFO: a: Int, -//INFO: b: String +//INFO: b: String = "default" //INFO: ): Unit

Some documentation

Params:

a - Some int

b - String