blob: d7ec9b632f0f2a9c18dfdb03d593183a6c05fe0a [file]
// WITH_REFLECT
fun box(): String = runAll(
"test1" to { test1() },
"test2" to { test2() },
"test3" to { test3() },
"test4" to { test4() },
"test5" to { test5() },
"test6" to { test6() },
"test7" to { test7("Some text") },
"test8" to { test8("a", "b") },
"test9" to { test9("Some text", "Another text") },
"test10" to { test10("Some text") },
)
class A {
fun foo(x: Int): Boolean = x % 2 != 0
override fun toString(): String {
return "A"
}
}
fun List<Int>.bar(x: Int): Boolean {
return false
}
fun test1() {
assert(A::foo == { x: Int -> x % 2 != 0 })
}
fun test2() {
assert(A::foo.isInfix)
}
fun test3() {
assert((A::foo)(A(), 4))
}
fun test4() {
assert(List<Int>::bar.name == "foo")
}
fun test5() {
assert(List<Int>::bar.isInfix)
}
fun test6() {
assert((List<Int>::bar)(listOf(1,2,3), 1))
}
fun String.foo(): Boolean { return false }
fun test7(a: String) {
assert((a::foo)())
}
fun test8(a: String, b: String) {
assert(((a+b)::foo)())
}
fun test9(a: String, b: String) {
assert(a::foo == b::foo)
}
fun test10(a: String) {
assert(a::foo.isOpen)
}