Extract Function: Support multiple output values

This commit is contained in:
Alexey Sedunov
2014-09-04 17:28:25 +04:00
parent 7a15a88288
commit 76433571f8
68 changed files with 1293 additions and 319 deletions
@@ -0,0 +1,31 @@
// WITH_RUNTIME
// PARAM_TYPES: kotlin.Int
// PARAM_TYPES: kotlin.Int
// PARAM_TYPES: kotlin.Int
// PARAM_DESCRIPTOR: value-parameter val a: kotlin.Int defined in foo
// PARAM_DESCRIPTOR: var b: kotlin.Int defined in foo
// PARAM_DESCRIPTOR: var c: kotlin.Int defined in foo
// SIBLING:
fun foo(a: Int): Int {
var b: Int = 1
var c: Int = 1
val pair = pair(a, b, c)
b = pair.first
c = pair.second
return b + c
}
private fun pair(a: Int, b: Int, c: Int): Pair<Int, Int> {
var b1 = b
var c1 = c
if (a > 0) {
b1 += a
} else {
c1 -= a
}
println(b1)
println(c1)
return Pair(b1, c1)
}