28 lines
639 B
Kotlin
Vendored
28 lines
639 B
Kotlin
Vendored
// !LANGUAGE: +InlineClasses
|
|
|
|
class Val {
|
|
operator fun getValue(thisRef: Any?, kProp: Any?) = 1
|
|
}
|
|
|
|
class Var {
|
|
operator fun getValue(thisRef: Any?, kProp: Any?) = 2
|
|
operator fun setValue(thisRef: Any?, kProp: Any?, value: Int) {}
|
|
}
|
|
|
|
|
|
object ValObject {
|
|
operator fun getValue(thisRef: Any?, kProp: Any?) = 1
|
|
}
|
|
|
|
object VarObject {
|
|
operator fun getValue(thisRef: Any?, kProp: Any?) = 2
|
|
operator fun setValue(thisRef: Any?, kProp: Any?, value: Int) {}
|
|
}
|
|
|
|
inline class Z(val data: Int) {
|
|
val testVal by Val()
|
|
var testVar by Var()
|
|
|
|
val testValBySingleton by ValObject
|
|
var testVarBySingleton by VarObject
|
|
} |