Added safeAccessToIfThen intention
This commit is contained in:
committed by
Zalim Bashorov
parent
1ca4bb0e79
commit
1f720c8559
@@ -0,0 +1,5 @@
|
||||
fun main(args: Array<String>) {
|
||||
val x: String? = null
|
||||
val y: String? = "Hello"
|
||||
val z = (x ?: y)?.<caret>length
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
fun main(args: Array<String>) {
|
||||
val x: String? = null
|
||||
val y: String? = "Hello"
|
||||
val s = x ?: y
|
||||
val z = if (s != null) s.length else null
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun foo(): String? = "foo"
|
||||
fun main(args: Array<String>) {
|
||||
foo()?.<caret>length()
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
fun foo(): String? = "foo"
|
||||
fun main(args: Array<String>) {
|
||||
val s = foo()
|
||||
if (s != null) s.length()
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun foo(): String? = "foo"
|
||||
fun main(args: Array<String>) {
|
||||
(foo())?.<caret>length()
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
fun foo(): String? = "foo"
|
||||
fun main(args: Array<String>) {
|
||||
val s = foo()
|
||||
if (s != null) s.length()
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
class Foo {
|
||||
val b: String?
|
||||
get() {
|
||||
print("I have side effects")
|
||||
return "Foo"
|
||||
}
|
||||
}
|
||||
fun main(args: Array<String>) {
|
||||
val a = Foo()
|
||||
println(a.b?.<caret>length)
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
class Foo {
|
||||
val b: String?
|
||||
get() {
|
||||
print("I have side effects")
|
||||
return "Foo"
|
||||
}
|
||||
}
|
||||
fun main(args: Array<String>) {
|
||||
val a = Foo()
|
||||
val s = a.b
|
||||
println(if (s != null) s.length else null)
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val x: String? = "abc"
|
||||
x?.<caret>length
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val x: String? = "abc"
|
||||
if (x != null) x.length
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val a: String? = "A"
|
||||
println(a?.<caret>length)
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val a: String? = "A"
|
||||
println(if (a != null) a.length else null)
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
fun main(args: Array<String>) {
|
||||
var a: String? = "A"
|
||||
println(a?.<caret>length)
|
||||
}
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
fun main(args: Array<String>) {
|
||||
var a: String? = "A"
|
||||
val s = a
|
||||
println(if (s != null) s.length else null)
|
||||
}
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val x: String? = "abc"
|
||||
val y = x?.<caret>length
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val x: String? = "abc"
|
||||
val y = if (x != null) x.length else null
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
fun f(s: Int?) {
|
||||
println(s)
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val x: String? = "foo"
|
||||
f(x?.<caret>length)
|
||||
}
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
fun f(s: Int?) {
|
||||
println(s)
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val x: String? = "foo"
|
||||
f(if (x != null) x.length else null)
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
foo?.<caret>length()
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
if (foo != null) foo.length()
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
(foo)?.<caret>length()
|
||||
}
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
if (foo != null) foo.length()
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
class B {
|
||||
val c = "ab"
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val a: B? = B()
|
||||
val x = a?.<caret>c
|
||||
}
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
class B {
|
||||
val c = "ab"
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val a: B? = B()
|
||||
val x = if (a != null) a.c else null
|
||||
}
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
class B {
|
||||
val c = C()
|
||||
}
|
||||
|
||||
class C {
|
||||
val d = "bc"
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val a: B? = B()
|
||||
val x = a<caret>?.c?.d
|
||||
}
|
||||
|
||||
+13
@@ -0,0 +1,13 @@
|
||||
class B {
|
||||
val c = C()
|
||||
}
|
||||
|
||||
class C {
|
||||
val d = "bc"
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val a: B? = B()
|
||||
val x = (if (a != null) a.c else null)?.d
|
||||
}
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
class B {
|
||||
val c = C()
|
||||
}
|
||||
|
||||
class C {
|
||||
val d = "bc"
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val a: B? = B()
|
||||
val x = a?.c?.<caret>d
|
||||
}
|
||||
+12
@@ -0,0 +1,12 @@
|
||||
class B {
|
||||
val c = C()
|
||||
}
|
||||
|
||||
class C {
|
||||
val d = "bc"
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val a: B? = B()
|
||||
val x = if (a?.c != null) a?.c.d else null
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
val a: String? = "A"
|
||||
fun main(args: Array<String>) {
|
||||
println(a?.<caret>length)
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
val a: String? = "A"
|
||||
fun main(args: Array<String>) {
|
||||
println(if (a != null) a.length else null)
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
val a: String?
|
||||
get() = ""
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
println(a?.<caret>length)
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
val a: String?
|
||||
get() = ""
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val s = a
|
||||
println(if (s != null) s.length else null)
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
var a: String? = "A"
|
||||
fun main(args: Array<String>) {
|
||||
a<caret>?.length
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
var a: String? = "A"
|
||||
fun main(args: Array<String>) {
|
||||
val s = a
|
||||
if (s != null) s.length
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
var a: String?
|
||||
get() = ""
|
||||
set(v) {}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
a?.<caret>length
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
var a: String?
|
||||
get() = ""
|
||||
set(v) {}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val s = a
|
||||
if (s != null) s.length
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun foo(arg: String?): Int? = arg?.<caret>length
|
||||
fun main(args: Array<String>) {
|
||||
foo("bar")
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun foo(arg: String?): Int? = if (arg != null) arg.length else null
|
||||
fun main(args: Array<String>) {
|
||||
foo("bar")
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
val y = if (true) foo?.<caret>length() else null
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
val y = if (true) if (foo != null) foo.length() else null else null
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
fun doSth(): String? {
|
||||
val x?: String = "abc"
|
||||
return x?.<caret>reverse()
|
||||
}
|
||||
fun main(args: Array<String>) {
|
||||
val y = doSth()
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
fun doSth(): String? {
|
||||
val x?: String = "abc"
|
||||
return if (x != null) x.reverse() else null
|
||||
}
|
||||
fun main(args: Array<String>) {
|
||||
val y = doSth()
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
if (true) {
|
||||
foo?.<caret>length()
|
||||
}
|
||||
}
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
fun main(args: Array<String>) {
|
||||
val foo: String? = "foo"
|
||||
if (true) {
|
||||
if (foo != null) foo.length()
|
||||
}
|
||||
}
|
||||
+4
-1
@@ -1,6 +1,9 @@
|
||||
// "class com.intellij.codeInsight.daemon.impl.quickfix.ImportClassFixBase" "false"
|
||||
// ERROR: Unresolved reference: SomeTest
|
||||
// ACTION: Edit intention settings
|
||||
// ACTION: Replace safe access expression with 'if' expression
|
||||
// ACTION: Disable 'Replace Safe Access Expression With 'if' Expression'
|
||||
|
||||
package testing
|
||||
|
||||
val x = testing?.<caret>SomeTest()
|
||||
val x = testing?.<caret>SomeTest()
|
||||
|
||||
Reference in New Issue
Block a user