KT-9418 Suggest name for new declaration basing on unresolved names in code

#KT-9418 Fixed
This commit is contained in:
Valentin Kipyatkov
2016-01-15 13:27:53 +03:00
parent 83ca4b84f9
commit 28331bca9f
23 changed files with 614 additions and 116 deletions
@@ -0,0 +1,32 @@
// RUN_HIGHLIGHTING_BEFORE
class C {
fun foo(p: Int) {
unresolvedInFoo1()
if (p > 0) {
unresolvedInFoo2()
}
}
companion object {
fun <caret>
fun bar() {
unresolvedInBar()
}
}
fun zoo() {
unresolvedInZoo()
}
}
fun f() {
unresolvedOutside()
}
// EXIST: unresolvedInFoo1
// EXIST: unresolvedInFoo2
// EXIST: unresolvedInBar
// EXIST: unresolvedInZoo
// ABSENT: unresolvedOutside
@@ -0,0 +1,32 @@
// RUN_HIGHLIGHTING_BEFORE
fun foo(p: Int) {
print(unresolved0)
if (p > 0) {
print(unresolved1)
val u<caret>
print(unresolved2)
if (p > 0) {
print(unresolved3)
}
unresolvedCall()
}
print(unresolved4)
}
fun bar() {
print(unresolvedInBar)
}
// ABSENT: unresolved0
// ABSENT: unresolved1
// EXIST: unresolved2
// EXIST: unresolved3
// ABSENT: unresolved4
// ABSENT: unresolvedInBar
// EXIST: unresolvedCall
@@ -0,0 +1,27 @@
// RUN_HIGHLIGHTING_BEFORE
class C {
fun foo(p: Int) {
unresolvedInFoo1()
if (p > 0) {
unresolvedInFoo2()
}
}
fun <caret>
fun bar(s: String) {
unresolvedInBar()
s.unresolvedWithReceiver()
}
}
fun f() {
unresolvedOutside()
}
// EXIST: unresolvedInFoo1
// EXIST: unresolvedInFoo2
// EXIST: unresolvedInBar
// ABSENT: unresolvedWithReceiver
// ABSENT: unresolvedOutside
@@ -0,0 +1,24 @@
// RUN_HIGHLIGHTING_BEFORE
class C {
fun foo(p: Int) {
print(unresolvedInFoo)
}
val <caret>
fun bar(s: String, x: UnresolvedType) {
print(unresolvedInBar)
print(s.unresolvedWithReceiver)
}
}
fun f() {
print(unresolvedOutside)
}
// EXIST: unresolvedInFoo
// EXIST: unresolvedInBar
// ABSENT: unresolvedWithReceiver
// ABSENT: unresolvedOutside
// ABSENT: UnresolvedType
@@ -0,0 +1,9 @@
// RUN_HIGHLIGHTING_BEFORE
fun foo() {
unresolvedInFoo()
}
fun String.<caret>
// ABSENT: unresolvedInFoo
@@ -0,0 +1,16 @@
// RUN_HIGHLIGHTING_BEFORE
fun foo(p: Int, <caret>) {
print(unresolvedInFoo1)
if (p > 0) {
print(unresolvedInFoo2)
}
}
fun bar() {
print(unresolvedInBar)
}
// EXIST: { lookupString: "unresolvedInFoo1", itemText: "unresolvedInFoo1" }
// EXIST: { lookupString: "unresolvedInFoo2", itemText: "unresolvedInFoo2" }
// ABSENT: unresolvedInBar
@@ -0,0 +1,13 @@
// RUN_HIGHLIGHTING_BEFORE
fun foo(p: UnresolvedClass1) {
val foo = UnresolvedClass2()
val bar = unresolvedValue
}
class <caret>
// EXIST: TopLevelClass
// EXIST: UnresolvedClass1
// EXIST: UnresolvedClass2
// ABSENT: unresolvedValue
@@ -0,0 +1,31 @@
// RUN_HIGHLIGHTING_BEFORE
fun foo(p: Int, x: UnresolvedClassName) {
unresolvedInFoo1()
if (p > 0) {
unresolvedInFoo2()
}
}
fun <caret>
fun bar() {
unresolvedInBar()
val v = unresolvedValue
listOf(1).filter(::unresolvedFunctionRef)
}
class C {
fun f() {
unresolvedInClass()
}
}
// EXIST: unresolvedInFoo1
// EXIST: unresolvedInFoo2
// EXIST: unresolvedInBar
// EXIST: unresolvedInClass
// ABSENT: UnresolvedClassName
// ABSENT: unresolvedValue
// EXIST: unresolvedFunctionRef
@@ -0,0 +1,13 @@
// RUN_HIGHLIGHTING_BEFORE
fun foo(p: UnresolvedClass1) {
val foo = UnresolvedClass2()
val bar = unresolvedValue
}
interface <caret>
// EXIST: TopLevelInterface
// EXIST: UnresolvedClass1
// ABSENT: UnresolvedClass2
// ABSENT: unresolvedValue
@@ -0,0 +1,13 @@
// RUN_HIGHLIGHTING_BEFORE
fun foo(p: UnresolvedClass1) {
val foo = UnresolvedClass2()
val bar = unresolvedValue
}
object <caret>
// EXIST: TopLevelObject
// EXIST: UnresolvedClass1
// ABSENT: UnresolvedClass2
// EXIST: unresolvedValue