From 3f6022d74e352192972a44655b7702172d6fa200 Mon Sep 17 00:00:00 2001 From: Nikolay Krasko Date: Fri, 20 Apr 2018 21:36:56 +0300 Subject: [PATCH] Don't show several lambda return inlay hints for elvis (KT-22436) Don't show inlay hints on binary expression operands #KT-22436 --- .../idea/parameterInfo/LambdaReturnValueHints.kt | 3 ++- .../parameterInfo/LambdaReturnValueHintsTest.kt | 13 +++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/parameterInfo/LambdaReturnValueHints.kt b/idea/src/org/jetbrains/kotlin/idea/parameterInfo/LambdaReturnValueHints.kt index f5c4a160b43..7162cf85b97 100644 --- a/idea/src/org/jetbrains/kotlin/idea/parameterInfo/LambdaReturnValueHints.kt +++ b/idea/src/org/jetbrains/kotlin/idea/parameterInfo/LambdaReturnValueHints.kt @@ -18,7 +18,8 @@ fun provideLambdaReturnValueHints(expression: KtExpression): List { return emptyList() } - if (expression.parent is KtDotQualifiedExpression || expression.parent is KtSafeQualifiedExpression) { + val parent = expression.parent + if (parent is KtDotQualifiedExpression || parent is KtSafeQualifiedExpression || parent is KtBinaryExpression) { return emptyList() } diff --git a/idea/tests/org/jetbrains/kotlin/idea/parameterInfo/LambdaReturnValueHintsTest.kt b/idea/tests/org/jetbrains/kotlin/idea/parameterInfo/LambdaReturnValueHintsTest.kt index 9dc450da7be..da56446fec0 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/parameterInfo/LambdaReturnValueHintsTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/parameterInfo/LambdaReturnValueHintsTest.kt @@ -96,4 +96,17 @@ class LambdaReturnValueHintsTest : KotlinLightCodeInsightFixtureTestCase() { }""" ) } + + fun testElvisOperator() { + check( + """ + fun foo() { + run { + val length: Int? = null + length ?: 0 + } + } + """.trimIndent() + ) + } }