blob: d631d12e110016b803863e2a9b29aa9cda5fe0db [file]
fun box(): String {
with(A()) {
return runAll(
"test1" to { test1() },
"test2" to { test2() },
"test3" to { false.test3() },
"test4" to { 1.test4() },
"test5" to { 1.test5() },
"test6" to { true.test6() },
"test7" to { 1.test7() },
)
}
}
class A {
val a: Boolean = false
val b: Int = 1
fun test1() {
assert(this.a)
}
fun test2() {
assert(this.b == 2)
}
fun Boolean.test3() {
assert(this)
}
fun Int.test4() {
assert(this == 2)
}
val test5 = fun Int.() {
assert(this == 2)
}
fun Boolean.test6() {
assert(this@A.a)
}
val test7 = lambda@ fun Int.() {
assert(this@lambda == 2)
}
override fun toString(): String {
return "A"
}
}