morozov
09/01/2017, 4:13 PMdknapp
09/01/2017, 4:19 PMpablisco
09/01/2017, 4:25 PMval MyInterface.prop: Int by lazy { 123 }
yoavst
09/01/2017, 4:26 PMpablisco
09/01/2017, 4:27 PMval MyInterface.prop: Int
get() = 123
But it’ll be always fetched but you can do it with an object.yoavst
09/01/2017, 4:29 PMpablisco
09/01/2017, 4:29 PMinterface MyInterface {
object Prop {
operator fun getValue(thisRef: Any, property: KProperty<*>): Int = 123
}
}
val MyInterface.prop: Int by MyInterface.Prop
var
instead of a val
)
You may have to start using a companion cache and such, potentially giving you leaks (unless you use WeakReferences)yoavst
09/01/2017, 4:45 PMpablisco
09/01/2017, 5:10 PMlazy
is a property delegate so it has the getValue
operatorvillela
09/01/2017, 6:22 PMyoavst
09/01/2017, 7:12 PMpablisco
09/01/2017, 7:23 PM