20 lines
377 B
Plaintext
Vendored
20 lines
377 B
Plaintext
Vendored
// WITH_DEFAULT_VALUE: false
|
|
public inline fun <T, R> with(receiver: T, f: T.() -> R): R = receiver.f()
|
|
|
|
class A(val a: Int) {
|
|
fun foo(i: Int): Int {
|
|
return i / 2
|
|
}
|
|
}
|
|
|
|
fun test() {
|
|
val a2 = A(1)
|
|
val a3 = A(2)
|
|
a2.foo(a2.a + a3.a)
|
|
with(A(1)) {
|
|
val a1 = A(2)
|
|
foo(a + a1.a)
|
|
val a = A(2)
|
|
this.foo(this.a + a.a)
|
|
}
|
|
} |