arrow-fx-coroutines / arrow.fx.coroutines.stream / scanMap
fun <O, O2>
Stream
<O>.scanMap(MO2: Monoid<O2>, f: (O) -> O2):
Stream
<O2>
Alias for map(f).scanMonoid
.
import arrow.fx.coroutines.stream.*
import arrow.core.extensions.monoid
//sampleStart
suspend fun main(): Unit =
Stream("a", "aa", "aaa", "aaaa")
.scanMap(Int.monoid()) { it.length }
.toList()
.let(::println) //[0, 1, 3, 6, 10]
//sampleEnd
Do you like Arrow?
✖