backend: add tests for lambda functions

This commit is contained in:
Svyatoslav Scherbina
2016-12-08 14:06:36 +07:00
committed by SvyatoslavScherbina
parent b5ffc48547
commit 4dec392880
10 changed files with 181 additions and 0 deletions
@@ -0,0 +1,24 @@
fun main(args : Array<String>) {
val lambda1 = bar("first")
val lambda2 = bar("second")
lambda1()
lambda2()
lambda1()
lambda2()
}
fun bar(str: String): () -> Unit {
var x = Integer(0)
return {
println(str)
println(x.toString())
x = x + 1
}
}
class Integer(val value: Int) {
override fun toString() = value.toString()
operator fun plus(other: Int) = Integer(value + other)
}