Test framework for inline

This commit is contained in:
Mikhael Bogdanov
2014-02-18 12:14:06 +04:00
parent 769b07fbc8
commit 4f5b20a8db
93 changed files with 2593 additions and 8 deletions
@@ -0,0 +1,19 @@
import test.*
fun test1(param: String): String {
var result = "fail1"
mfun(param) { a ->
concat("start") {
result = doSmth(a).toString()
}
}
return result
}
fun box(): String {
if (test1("start") != "start") return "fail1"
if (test1("nostart") != "nostart") return "fail2"
return "OK"
}
@@ -0,0 +1,13 @@
package test
fun concat(suffix: String, l: (s: String) -> Unit) {
l(suffix)
}
fun <T> mfun(arg: T, f: (T) -> Unit) {
f(arg)
}
inline fun doSmth(a: String): String {
return a.toString()
}