Files
kotlin-fork/jps/jps-plugin/testData/incremental/lookupTracker/jvm/classifierMembers/foo.K1.kt
T
Ilya Chernikov 1989e8f094 IC tests: add infrastructure for K1/K2 lookups comparison
Adapt lookup tests to allow running K1 and K2 on the same testdata
and compare the lookups recorded.
2024-03-12 11:38:06 +00:00

70 lines
2.2 KiB
Kotlin
Vendored

package foo
/*p:foo*/class A {
val a = 1
var b = ""
val c: /*p:foo p:foo.A p:foo.A.Companion*/String
get() = /*p:foo.A*/b
var d: /*p:foo p:foo.A p:foo.A.Companion*/String = "ddd"
get() = field
set(v) { field = v }
fun foo() {
/*p:foo.A*/a
/*p:foo.A*/foo()
/*p:foo(A)*/this./*p:foo.A*/a
/*p:foo(A)*/this./*p:foo.A*/foo()
/*p:foo p:foo.A p:foo.A(getBAZ) p:foo.A(getBaz) p:foo.A.Companion p:java.lang p:kotlin p:kotlin.annotation p:kotlin.collections p:kotlin.comparisons p:kotlin.io p:kotlin.jvm p:kotlin.ranges p:kotlin.sequences p:kotlin.text*/baz()
/*p:foo p:foo.A p:foo.A.Companion p:java.lang p:kotlin p:kotlin.annotation p:kotlin.collections p:kotlin.comparisons p:kotlin.io p:kotlin.jvm p:kotlin.ranges p:kotlin.sequences p:kotlin.text*/Companion./*p:foo.A.Companion*/a
/*p:foo p:foo.A p:foo.A.Companion p:java.lang p:kotlin p:kotlin.annotation p:kotlin.collections p:kotlin.comparisons p:kotlin.io p:kotlin.jvm p:kotlin.ranges p:kotlin.sequences p:kotlin.text*/O./*p:foo.A.O*/v = "OK"
}
class B {
val a = 1
companion object CO {
fun bar(a: /*p:foo p:foo.A p:foo.A.B p:foo.A.B.CO p:foo.A.Companion*/Int) {}
}
}
inner class C
companion object {
val a = 1
fun baz() {}
}
object O {
var v = "vvv"
}
}
/*p:foo*/interface I {
var a: /*p:foo p:foo.I*/Int
fun foo()
class NI
}
/*p:foo*/object Obj : /*p:foo*/I {
override var a = 1
override fun foo() {}
val b = 1
fun bar(): /*p:foo p:foo.Obj*/I = /*p:foo(I) p:kotlin(Nothing)*/null as /*p:foo p:foo.Obj*/I
}
/*p:foo*/enum class E {
X,
Y;
val a = 1
fun foo() {
/*p:foo.E*/a
/*p:foo p:foo.E p:java.lang p:kotlin p:kotlin.annotation p:kotlin.collections p:kotlin.comparisons p:kotlin.io p:kotlin.jvm p:kotlin.ranges p:kotlin.sequences p:kotlin.text*/Y./*p:foo.E*/a
/*p:foo.E*/foo()
/*p:foo p:foo.E p:java.lang p:kotlin p:kotlin.annotation p:kotlin.collections p:kotlin.comparisons p:kotlin.io p:kotlin.jvm p:kotlin.ranges p:kotlin.sequences p:kotlin.text*/X./*p:foo.E*/foo()
}
}