Files
kotlin-fork/compiler/testData/ir/irText/expressions/variableAsFunctionCall.kt.txt
T
2020-11-26 00:14:55 +03:00

36 lines
722 B
Plaintext
Vendored

fun String.k(): Function0<String> {
return local fun <anonymous>(): String {
return <this>
}
}
fun test1(f: Function0<Unit>) {
return f.invoke()
}
fun test2(f: @ExtensionFunctionType Function1<String, Unit>) {
return f.invoke(p1 = "hello")
}
fun test3(): String {
return "hello".k().invoke()
}
fun test4(ns: String?): String? {
return { // BLOCK
val tmp1_safe_receiver: Function0<String>? = { // BLOCK
val tmp0_safe_receiver: String? = ns
when {
EQEQ(arg0 = tmp0_safe_receiver, arg1 = null) -> null
else -> tmp0_safe_receiver.k()
}
}
when {
EQEQ(arg0 = tmp1_safe_receiver, arg1 = null) -> null
else -> tmp1_safe_receiver.invoke()
}
}
}