Use delegate initializer expression resolution scope for 'toDelegateFor' resolution.

This commit is contained in:
Dmitry Petrov
2016-12-06 14:57:18 +03:00
committed by Stanislav Erokhin
parent a6bc7271ae
commit 5ddf8e60e6
25 changed files with 424 additions and 29 deletions
@@ -0,0 +1,16 @@
import kotlin.reflect.KProperty
var log = ""
class UserDataProperty<in R>(val key: String) {
operator fun getValue(thisRef: R, desc: KProperty<*>) = thisRef.toString() + key
operator fun setValue(thisRef: R, desc: KProperty<*>, value: String?) { log += "set"}
}
var String.calc: String by UserDataProperty("K")
fun box(): String {
return "O".calc
}