Files
kotlin-fork/idea/testData/refactoring/extractFunction/parameters/capturedFunctions/localExtensionFunChainedCalls.kt.after
T

15 lines
684 B
Plaintext
Vendored

// OPTIONS: true, false, false, false, true, false
// PARAM_DESCRIPTOR: local final fun kotlin.Int.bar1(m: kotlin.Int): kotlin.Int defined in foo
// PARAM_DESCRIPTOR: local final fun kotlin.Int.bar2(m: kotlin.Int): kotlin.Int defined in foo
// PARAM_DESCRIPTOR: value-parameter n: kotlin.Int defined in foo
// PARAM_TYPES: kotlin.Int.(kotlin.Int) -> kotlin.Int
// PARAM_TYPES: kotlin.Int.(kotlin.Int) -> kotlin.Int
// PARAM_TYPES: kotlin.Int
fun foo(n: Int): Int {
fun Int.bar1(m: Int) = this + m + n
fun Int.bar2(m: Int) = this * m * n
return i(Int::bar1, Int::bar2, n)
}
private fun i(bar1: Int.(Int) -> Int, bar2: Int.(Int) -> Int, n: Int) = n.bar1(n + 1).bar2(n + 2)