Convert FoldInitializerAndIfToElvisIntention to inspection and decrease severity to INFO
#KT-19643 Fixed
This commit is contained in:
@@ -0,0 +1 @@
|
||||
org.jetbrains.kotlin.idea.inspections.FoldInitializerAndIfToElvisInspection
|
||||
@@ -0,0 +1,6 @@
|
||||
fun foo(p: List<String?>) {
|
||||
for (i in 1..10) {
|
||||
val v = p[i]
|
||||
<caret>if (v == null) break
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
fun foo(p: List<String?>) {
|
||||
for (i in 1..10) {
|
||||
val v = p[i] ?: <caret>break
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
fun foo(p: List<String?>): Int {
|
||||
val v = p[0]
|
||||
<caret>if (v == null) {
|
||||
// return -1 if null
|
||||
return -1
|
||||
}
|
||||
return v.length
|
||||
}
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
fun foo(p: List<String?>): Int {
|
||||
val v = p[0]
|
||||
?: // return -1 if null
|
||||
<caret>return -1
|
||||
return v.length
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
fun foo(p: List<String?>): Int {
|
||||
val v = p[0]
|
||||
// now check if v is null
|
||||
<caret>if (v == null/* null */) return -1 // return -1
|
||||
return v.length
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
fun foo(p: List<String?>): Int {
|
||||
val v = p[0] ?: /* null */<caret>return -1
|
||||
// now check if v is null
|
||||
// return -1
|
||||
return v.length
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
fun foo(p: List<String?>): Int {
|
||||
val v = p[0]
|
||||
<caret>if (v == null) { // v is null
|
||||
// we should do something with it
|
||||
return -1 // let's return -1
|
||||
} // end of if
|
||||
return v.length
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
fun foo(p: List<String?>): Int {
|
||||
val v = p[0]
|
||||
?: // v is null
|
||||
// we should do something with it
|
||||
return -1 // let's return -1
|
||||
// end of if
|
||||
return v.length
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
fun foo(p: List<String?>) {
|
||||
for (i in 1..10) {
|
||||
val v = p[i]
|
||||
<caret>if (v == null) continue
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
fun foo(p: List<String?>) {
|
||||
for (i in 1..10) {
|
||||
val v = p[i] ?: <caret>continue
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
// WITH_RUNTIME
|
||||
fun foo(): String? = null
|
||||
|
||||
fun bar() {
|
||||
val v: String? = foo()
|
||||
<caret>if (v == null) throw Exception()
|
||||
v.length
|
||||
}
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
// WITH_RUNTIME
|
||||
fun foo(): String? = null
|
||||
|
||||
fun bar() {
|
||||
val v: String = foo() ?: throw Exception()
|
||||
v.length
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
fun foo(): String? = null
|
||||
|
||||
fun bar() {
|
||||
var v: String? = foo()
|
||||
<caret>if (v == null) throw Exception()
|
||||
v = null
|
||||
}
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
fun foo(): String? = null
|
||||
|
||||
fun bar() {
|
||||
var v: String? = foo() ?: throw Exception()
|
||||
v = null
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
// PROBLEM: none
|
||||
fun foo(p: List<String?>): Int {
|
||||
val v = p[0]
|
||||
<caret>if (v != null) return -1
|
||||
return 0
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
open class A
|
||||
|
||||
open class B : A() {
|
||||
fun b() {}
|
||||
}
|
||||
|
||||
fun test() {
|
||||
val b = B()
|
||||
if (<caret>b !is B) {
|
||||
return
|
||||
}
|
||||
b.b()
|
||||
}
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
open class A
|
||||
|
||||
open class B : A() {
|
||||
fun b() {}
|
||||
}
|
||||
|
||||
fun test() {
|
||||
val b = B() as? B ?: return
|
||||
b.b()
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
// PROBLEM: none
|
||||
interface A {
|
||||
fun a() {}
|
||||
}
|
||||
|
||||
open class B : A {
|
||||
fun b() {}
|
||||
}
|
||||
|
||||
interface C : A {
|
||||
fun c() {}
|
||||
}
|
||||
|
||||
fun test() {
|
||||
val b = B()
|
||||
if (<caret>b !is C) {
|
||||
return
|
||||
}
|
||||
b.b()
|
||||
b.c()
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
open class A
|
||||
|
||||
open class B : A() {
|
||||
fun b() {}
|
||||
}
|
||||
|
||||
open class C : B() {
|
||||
fun c() {}
|
||||
}
|
||||
|
||||
fun test() {
|
||||
val b = B()
|
||||
if (<caret>b !is C) {
|
||||
return
|
||||
}
|
||||
b.b()
|
||||
}
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
open class A
|
||||
|
||||
open class B : A() {
|
||||
fun b() {}
|
||||
}
|
||||
|
||||
open class C : B() {
|
||||
fun c() {}
|
||||
}
|
||||
|
||||
fun test() {
|
||||
val b = B() as? C ?: return
|
||||
b.b()
|
||||
}
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
// PROBLEM: none
|
||||
open class A
|
||||
|
||||
open class B : A() {
|
||||
fun b() {}
|
||||
}
|
||||
|
||||
fun test() {
|
||||
val b = B()
|
||||
if (<caret>b !is A) {
|
||||
return
|
||||
}
|
||||
b.b()
|
||||
}
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
// PROBLEM: none
|
||||
fun foo(p: List<String?>) {
|
||||
val v = p[0]
|
||||
<caret>if (v == null) {
|
||||
bar()
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
fun bar(){}
|
||||
@@ -0,0 +1,8 @@
|
||||
// PROBLEM: none
|
||||
fun foo(p: List<String?>): Int? {
|
||||
val v = p[0]
|
||||
<caret>if (v == null) bar()
|
||||
return v?.length
|
||||
}
|
||||
|
||||
fun bar(){}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun foo(arg: Any?) {
|
||||
val n = arg
|
||||
if (<caret>n !is Int) return
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fun foo(arg: Any?) {
|
||||
val n = arg as? Int ?: return
|
||||
}
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
// PROBLEM: none
|
||||
fun test(): String {
|
||||
val foo = foo()
|
||||
<caret>if (foo !is String?) return "0"
|
||||
return "1"
|
||||
}
|
||||
|
||||
fun foo(): Any? = null
|
||||
@@ -0,0 +1,11 @@
|
||||
// PROBLEM: none
|
||||
class C {
|
||||
var v: String? = null
|
||||
|
||||
fun foo(p: List<String?>): Int {
|
||||
val v = p[0]
|
||||
<caret>if (this.v == null) return -1
|
||||
return v!!.length
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
// PROBLEM: none
|
||||
class C {
|
||||
var x: String? = null
|
||||
|
||||
fun foo(p: List<String?>): Int {
|
||||
val v = p[0]
|
||||
<caret>if (x == null) return -1
|
||||
return v!!.length
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
fun foo(p: List<String?>): Int {
|
||||
val v = p[0]
|
||||
<caret>if (v == null) return -1
|
||||
return v.length
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun foo(p: List<String?>): Int {
|
||||
val v = p[0] ?: <caret>return -1
|
||||
return v.length
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
fun foo(p: List<String?>) {
|
||||
val v = p[0]
|
||||
<caret>if (v == null) {
|
||||
throw RuntimeException()
|
||||
}
|
||||
}
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
fun foo(p: List<String?>) {
|
||||
val v = p[0] ?: <caret>throw RuntimeException()
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
// PROBLEM: none
|
||||
|
||||
interface A {
|
||||
val s: String
|
||||
}
|
||||
|
||||
fun foo() = Any()
|
||||
|
||||
fun test(): String {
|
||||
val y = foo()
|
||||
<caret>if (y !is A) return y.toString()
|
||||
return y.s
|
||||
}
|
||||
+13
@@ -0,0 +1,13 @@
|
||||
// PROBLEM: none
|
||||
|
||||
interface A {
|
||||
val s: String
|
||||
}
|
||||
|
||||
fun foo() = Any()
|
||||
|
||||
fun test(): String {
|
||||
val y = foo()
|
||||
<caret>if (y !is A) return "Expected A: $y"
|
||||
return y.s
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
fun foo(p: List<String?>, b: Boolean) {
|
||||
var v = p[0]
|
||||
<caret>if (v == null) return
|
||||
if (b) v = null
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun foo(p: List<String?>, b: Boolean) {
|
||||
var v: String? = p[0] ?: <caret>return
|
||||
if (b) v = null
|
||||
}
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
// WITH_RUNTIME
|
||||
fun test(a: String?, b: String): String {
|
||||
val x = if (true) a else b
|
||||
<caret>if (x == null) throw Exception()
|
||||
return x
|
||||
}
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
// WITH_RUNTIME
|
||||
fun test(a: String?, b: String): String {
|
||||
val x = (if (true) a else b) ?: throw Exception()
|
||||
return x
|
||||
}
|
||||
Reference in New Issue
Block a user