blob: d30e553117c2a80a039879a490707eecb1bf5a35 [file]
package foo
interface C {
fun f(): String
}
class B(val value: String) : C {
override fun f() = value
}
val b: Any = B("O")
val x = B("failure1")
val y = B("K")
val z = B("failure2")
fun selector() = 2
class A : C by (b as C)
class D : C by when (selector()) {
1 -> x
2 -> y
else -> z
}
fun box(): String {
return A().f() + D().f()
}