Files
kotlin/compiler/testData/codegen/boxWithStdlib/callableReference/function/toString.kt
Alexander Udalov 8f7c0f0b65 Introduce KFunctionImpl, KMemberFunctionImpl, KExtensionFunctionImpl
Old 23*3 classes will be dropped, since they have no value.

Simplify JvmFunctionImplTypes significantly because of that
2014-05-19 19:50:59 +04:00

24 lines
572 B
Kotlin

fun foo(s: String) {}
class A {
fun bar(): String = ""
}
fun A.baz(x: Int) {}
fun box(): String {
val f = "${::foo}"
if (f != "kotlin.reflect.KFunction1<java.lang.String, kotlin.Unit>") return "Fail foo: $f"
val nameOfA = (A() as java.lang.Object).getClass().getName()
val g = "${A::bar}"
if (g != "kotlin.reflect.KMemberFunction0<$nameOfA, java.lang.String>") return "Fail bar: $g"
val h = "${A::baz}"
if (h != "kotlin.reflect.KExtensionFunction1<$nameOfA, java.lang.Integer, kotlin.Unit>") return "Fail baz: $h"
return "OK"
}