mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-12 00:21:32 +00:00
55 lines
1.7 KiB
Kotlin
Vendored
55 lines
1.7 KiB
Kotlin
Vendored
fun fn0() {}
|
|
fun fn1(x: Any) {}
|
|
|
|
val lambda0 = {} as () -> Unit
|
|
val lambda1 = { x: Any -> } as (Any) -> Unit
|
|
|
|
fun Any.extFun() {}
|
|
|
|
var Any.extProp: String
|
|
get() = "extProp"
|
|
set(x: String) {}
|
|
|
|
class A {
|
|
fun foo() {}
|
|
}
|
|
|
|
fun box(): String {
|
|
val f0 = ::fn0 as Any
|
|
val f1 = ::fn1 as Any
|
|
|
|
val ef = Any::extFun as Any
|
|
val epg = Any::extProp.getter
|
|
val eps = Any::extProp.setter
|
|
|
|
val afoo = A::foo
|
|
|
|
fun local0() {}
|
|
fun local1(x: Any) {}
|
|
|
|
val localFun0 = ::local0 as Any
|
|
val localFun1 = ::local1 as Any
|
|
|
|
assert(f0 is Function0<*>) { "Failed: f0 is Function0<*>" }
|
|
assert(f1 is Function1<*, *>) { "Failed: f1 is Function1<*, *>" }
|
|
assert(f0 !is Function1<*, *>) { "Failed: f0 !is Function1<*, *>" }
|
|
assert(f1 !is Function0<*>) { "Failed: f1 !is Function0<*>" }
|
|
|
|
assert(lambda0 is Function0<*>) { "Failed: lambda0 is Function0<*>" }
|
|
assert(lambda1 is Function1<*, *>) { "Failed: lambda1 is Function1<*, *>" }
|
|
assert(lambda0 !is Function1<*, *>) { "Failed: lambda0 !is Function1<*, *>" }
|
|
assert(lambda1 !is Function0<*>) { "Failed: lambda1 !is Function0<*>" }
|
|
|
|
assert(localFun0 is Function0<*>) { "Failed: localFun0 is Function0<*>" }
|
|
assert(localFun1 is Function1<*, *>) { "Failed: localFun1 is Function1<*, *>" }
|
|
assert(localFun0 !is Function1<*, *>) { "Failed: localFun0 !is Function1<*, *>" }
|
|
assert(localFun1 !is Function0<*>) { "Failed: localFun1 !is Function0<*>" }
|
|
|
|
assert(ef is Function1<*, *>) { "Failed: ef is Function1<*, *>" }
|
|
assert(epg is Function1<*, *>) { "Failed: epg is Function1<*, *>"}
|
|
assert(eps is Function2<*, *, *>) { "Failed: eps is Function2<*, *, *>"}
|
|
|
|
assert(afoo is Function1<*, *>) { "afoo is Function1<*, *>" }
|
|
|
|
return "OK"
|
|
} |