Add support for desctructuring of lambda parameters in JVM backend

#KT-5828 In Progress
This commit is contained in:
Denis Zharkov
2016-09-16 16:33:19 +03:00
parent e975d32196
commit e75efc88ff
17 changed files with 332 additions and 15 deletions
@@ -0,0 +1,13 @@
data class A(val x: String, val y: String)
fun foo(a: A, block: (A) -> String): String = block(a)
fun box() {
foo(A("O", "K")) { (x, y) -> x + y }
}
// METHOD : DestructuringInLambdasKt$box$1.invoke(LA;)Ljava/lang/String;
// VARIABLE : NAME=this TYPE=LDestructuringInLambdasKt$box$1; INDEX=0
// VARIABLE : NAME=$x_y TYPE=LA; INDEX=1
// VARIABLE : NAME=x TYPE=LA; INDEX=2
// VARIABLE : NAME=y TYPE=LA; INDEX=3