Files
kotlin-fork/jps/jps-plugin/testData/incremental/lookupTracker/jvm/classifierMembers/foo.kt
T
Ilya Chernikov 39b05a0a1c K2 IC: fix classifiers lookups
in particular nested classifiers and companions.

#KTIJ-24833 fixed
#KTIJ-24830 fixed
#KT-55195 fixed
2024-03-12 11:38:07 +00:00

72 lines
1.5 KiB
Kotlin
Vendored

package foo
import bar.*
/*p:foo*/class A {
val a = 1
var b = ""
val c: /*p:bar p:foo p:foo.A*/String
get() = /*p:foo.A*/b
var d: /*p:bar p:foo p:foo.A*/String = "ddd"
get() = field
set(v) { field = v }
fun foo() {
/*p:foo.A*/a
/*p:foo.A*/foo()
/*p:foo.A(a)*/this.a
/*p:foo.A(foo)*/this.foo()
/*p:bar p:foo p:foo.A p:foo.A.Companion*/baz()
/*p:bar p:foo p:foo.A p:foo.A(a) p:foo.A.Companion p:foo.A.Companion(a)*/Companion.a
/*p:bar p:foo p:foo.A p:foo.A.Companion p:foo.A.O(v)*/O.v = "OK"
}
class B {
val a = 1
companion object CO {
fun bar(a: /*p:bar p:foo p:foo.A p:foo.A.B*/Int) {}
}
}
inner class C
companion object {
val a = 1
fun baz() {}
}
object O {
var v = "vvv"
}
}
/*p:foo*/interface I {
var a: /*p:bar p:foo p:foo.I*/Int
fun foo()
class NI
}
/*p:foo*/object Obj : /*p:bar p:foo*/I {
override var a = 1
override fun foo() {}
val b = 1
fun bar(): /*p:bar p:foo*/I = null as /*p:bar p:foo*/I
}
/*p:foo*/enum class E {
X,
Y;
val a = 1
fun foo() {
/*p:foo.E*/a
/*p:bar p:foo p:foo(E) p:foo.E p:foo.E(a) p:kotlin(Enum) p:kotlin.Enum p:kotlin.Enum(Companion) p:kotlin.Enum.Companion*/Y.a
/*p:foo.E*/foo()
/*p:bar p:foo p:foo(E) p:foo.E p:foo.E(foo) p:kotlin(Enum) p:kotlin.Enum p:kotlin.Enum(Companion) p:kotlin.Enum.Companion*/X.foo()
}
}