mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-08 15:53:19 +00:00
* fixed NoSuchMethod caused by mismatched signatures of the "invoke" method generated for lambda arguments * added test cases in invoke.kt for KFunction and anonymous functions * added a transformer to wrap the last expression in the bodies of lambdas with return
15 lines
361 B
Kotlin
Vendored
15 lines
361 B
Kotlin
Vendored
inline fun <T> tryOrElse(f1: () -> T, f2: () -> T): T =
|
|
try { f1() } catch (e: Exception) { f2() }
|
|
|
|
fun testIt() =
|
|
"abc" +
|
|
tryOrElse({ try { "def" } catch(e: Exception) { "oops!" } }, { "hmmm..." }) +
|
|
"ghi"
|
|
|
|
fun box(): String {
|
|
val test = testIt()
|
|
if (test != "abcdefghi") return "Failed, test==$test"
|
|
|
|
return "OK"
|
|
}
|