47 lines
881 B
Plaintext
Vendored
47 lines
881 B
Plaintext
Vendored
class Delegate {
|
|
constructor(value: String) /* primary */ {
|
|
TODO("IrDelegatingConstructorCall")
|
|
/* InstanceInitializerCall */
|
|
|
|
}
|
|
|
|
val value: String
|
|
field = value
|
|
get
|
|
|
|
operator fun getValue(thisRef: Any?, property: Any?): String {
|
|
return <this>.<get-value>()
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
class DelegateProvider {
|
|
constructor(value: String) /* primary */ {
|
|
TODO("IrDelegatingConstructorCall")
|
|
/* InstanceInitializerCall */
|
|
|
|
}
|
|
|
|
val value: String
|
|
field = value
|
|
get
|
|
|
|
operator fun provideDelegate(thisRef: Any?, property: Any?): Delegate {
|
|
return Delegate(value = <this>.<get-value>())
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
val testTopLevel: String /* by */
|
|
field = DelegateProvider(value = "OK").provideDelegate(thisRef = null, property = ::testTopLevel)
|
|
get(): String {
|
|
return #testTopLevel$delegate.getValue(thisRef = null, property = ::testTopLevel)
|
|
}
|
|
|