Split or glue together checks for not null and is instance + more intelligent use of filter vs filterTo
#KT-14284 Fixed #KT-14286 Fixed #KT-14287 Fixed #KT-14303 Fixed
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
// WITH_RUNTIME
|
||||
// INTENTION_TEXT: "Replace with 'filterNotNull().firstOrNull{}'"
|
||||
// INTENTION_TEXT_2: "Replace with 'asSequence().filterNotNull().firstOrNull{}'"
|
||||
// INTENTION_TEXT: "Replace with 'firstOrNull{}'"
|
||||
// IS_APPLICABLE_2: false
|
||||
|
||||
fun getFirstValue() = "value"
|
||||
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
// WITH_RUNTIME
|
||||
// INTENTION_TEXT: "Replace with 'filterNotNull().firstOrNull{}'"
|
||||
// INTENTION_TEXT_2: "Replace with 'asSequence().filterNotNull().firstOrNull{}'"
|
||||
// INTENTION_TEXT: "Replace with 'firstOrNull{}'"
|
||||
// IS_APPLICABLE_2: false
|
||||
|
||||
fun getFirstValue() = "value"
|
||||
|
||||
fun foo(list: List<String?>): String? {
|
||||
val value = getFirstValue()
|
||||
val <caret>found: String? = list
|
||||
.filterNotNull()
|
||||
.firstOrNull { !it.startsWith("IMG:") && it.contains(value) }
|
||||
val found: String? = list.firstOrNull { it != null && !it.startsWith("IMG:") && it.contains(value) }
|
||||
return found
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
// WITH_RUNTIME
|
||||
// INTENTION_TEXT: "Replace with 'filterNotNull().firstOrNull{}'"
|
||||
// INTENTION_TEXT_2: "Replace with 'asSequence().filterNotNull().firstOrNull{}'"
|
||||
|
||||
fun getFirstValue() = "value"
|
||||
|
||||
fun foo(list: List<String?>): String? {
|
||||
val value = getFirstValue()
|
||||
val <caret>found: String? = list
|
||||
.asSequence()
|
||||
.filterNotNull()
|
||||
.firstOrNull { !it.startsWith("IMG:") && it.contains(value) }
|
||||
return found
|
||||
}
|
||||
Reference in New Issue
Block a user