KT-6376 Smart completion should work after "in" and "!in"
#KT-6376 Fixed
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
trait X
|
||||
trait Y : X
|
||||
trait Z
|
||||
|
||||
fun X.contains(s: String): Boolean
|
||||
|
||||
fun foo(s: String, x: X, y: Y, z: Z) {
|
||||
if (s in <caret>)
|
||||
}
|
||||
|
||||
// EXIST: x
|
||||
// EXIST: y
|
||||
// ABSENT: z
|
||||
@@ -0,0 +1,19 @@
|
||||
trait X {
|
||||
fun contains(s: String): Boolean
|
||||
}
|
||||
|
||||
trait Y {
|
||||
fun contains(i: Int): Boolean
|
||||
}
|
||||
|
||||
trait Z {
|
||||
fun contains(o: Any): Boolean
|
||||
}
|
||||
|
||||
fun foo(s: String, x: X, y: Y, z: Z) {
|
||||
if (s in <caret>)
|
||||
}
|
||||
|
||||
// EXIST: x
|
||||
// ABSENT: y
|
||||
// EXIST: z
|
||||
@@ -0,0 +1,5 @@
|
||||
fun foo(s: String) {
|
||||
if (s in <caret>)
|
||||
}
|
||||
|
||||
// EXIST: { lookupString:"listOf", itemText: "listOf", tailText: "(vararg values: T) (kotlin)", typeText:"List<T>" }
|
||||
@@ -0,0 +1,13 @@
|
||||
trait X<T> {
|
||||
fun contains(t: T): Boolean
|
||||
}
|
||||
|
||||
trait A {
|
||||
fun<T> createX(t: T): X<T>
|
||||
|
||||
fun foo(s: String) {
|
||||
if (s in <caret>)
|
||||
}
|
||||
}
|
||||
|
||||
// EXIST: { lookupString:"createX", itemText: "createX", tailText: "(t: T)", typeText:"X<T>" }
|
||||
@@ -0,0 +1,13 @@
|
||||
trait X<T>
|
||||
|
||||
fun<T> X<T>.contains(t: T): Boolean
|
||||
|
||||
trait A {
|
||||
fun<T> createX(t: T): X<T>
|
||||
|
||||
fun foo(s: String) {
|
||||
if (s in <caret>)
|
||||
}
|
||||
}
|
||||
|
||||
// EXIST: { lookupString:"createX", itemText: "createX", tailText: "(t: T)", typeText:"X<T>" }
|
||||
@@ -0,0 +1,9 @@
|
||||
trait X {
|
||||
fun contains(s: String): Boolean?
|
||||
}
|
||||
|
||||
fun foo(s: String, x: X) {
|
||||
if (s in <caret>)
|
||||
}
|
||||
|
||||
// ABSENT: x
|
||||
@@ -0,0 +1,6 @@
|
||||
fun foo(s: String, list: List<String>, o: Any) {
|
||||
if (s !in <caret>)
|
||||
}
|
||||
|
||||
// EXIST: list
|
||||
// ABSENT: o
|
||||
@@ -0,0 +1,7 @@
|
||||
fun foo(s: String, list: List<String>?) {
|
||||
if (s in <caret>)
|
||||
}
|
||||
|
||||
// ABSENT: { lookupString:"list", itemText: "list" }
|
||||
// EXIST: { lookupString:"list", itemText: "!! list", typeText:"List<String>?" }
|
||||
// EXIST: { lookupString:"list", itemText: "?: list", typeText:"List<String>?" }
|
||||
@@ -0,0 +1,6 @@
|
||||
fun foo(s: String, list: List<String>, o: Any) {
|
||||
if (s in <caret>)
|
||||
}
|
||||
|
||||
// EXIST: list
|
||||
// ABSENT: o
|
||||
@@ -0,0 +1,6 @@
|
||||
fun foo(s: String, o1: Any, o2: Any) {
|
||||
if (o1 is Collection<String> && s in <caret>
|
||||
}
|
||||
|
||||
// EXIST: o1
|
||||
// ABSENT: o2
|
||||
Reference in New Issue
Block a user