Kotlin функция слияния - PullRequest
       1

Kotlin функция слияния

0 голосов
/ 08 июля 2020

Моя цель - иметь функцию, которая объединяет N функций в одну. Желательно с встраиванием.

Я вижу это так:

inline fun merge(vararg functions:(N)->Unit):(N)->Unit{
//something that makes this vararg into one function which calls all functions from vararg is sequence
}

Как я могу это сделать? Если смогу.

1 Ответ

0 голосов
/ 08 июля 2020

Попробуйте это:

fun <N> merge(vararg functions: (N) -> Unit): (N) -> Unit = { n: N ->
    functions.forEach { it(n) } 
}

Пример использования:

val one: (Int) -> Unit = { it + 2 }
val two: (Int) -> Unit = { it + 5 }

merge(one, two)(5)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...