Приложение частичной функции в Котлине

У меня возникают проблемы с синтаксисом для приложения с частичными функциями. Следующий код работает отлично, и он выводит: two-three-four

 import kotlin.coroutines.experimental.* inline fun <T> Iterable<T>.forEachFrom(beg:Int, act:(T)->Unit) { var i=0; if (beg>=0) for (e in this) if (i++ >= beg) act(e) } // sample function I am testing; please don't change this! fun main(a:Array<String>) { val l = listOf("zero", "one", "two", "three", "four") fun test() = buildSequence { l.forEachFrom(2) { yield(it) } }.joinToString("-") println(test()) } 

Я хотел бы инкапсулировать свой test() , поэтому он называется как: test(l.forEachFrom(2)) Однако я не могу получить правильные типы / синтаксис. Как бы я переписал определение функции test() чтобы сделать это возможным?

Intereting Posts
Как я могу запустить один Android-тест с помощью Kotlin? Функции расширения Котлина внезапно требуют уровня api 24 Котлин: заявление Лямбде Котлин ждет, пока функция не закончится Использовать библиотеки Javascript в Котлине Невозможно обновить фрагменты в FragmentPagerAdapter Цвет фона и перетасовка изображений в режиме прокрутки в recyclerView Android с помощью группового адаптера Обеспечивает ли Kotlin повышение производительности? как получить информацию, используя библиотеку волейбола в Котлине Как легко потреблять продюсера канала Kotlin на Java? указать класс Kotlin как точку входа Main-Class в MANIFEST.MF? Как создать построитель для класса данных Kotlin со многими неизменяемыми свойствами Почему результат функции не работает как предложение в заявлении when в Kotlin? Regex: метасимвол для распознавания любого типа персонажа Как настроить версию Kotlin в Android Studio?