arrow-fx-coroutines / arrow.fx.coroutines.stream / scanMonoid
fun <O>
Stream
<O>.scanMonoid(MO: Monoid<O>):
Stream
<O>
Folds this stream with the monoid for O
while emitting all intermediate results.
import arrow.fx.coroutines.stream.*
import arrow.core.extensions.monoid
//sampleStart
suspend fun main(): Unit =
Stream(1, 2, 3, 4)
.scanMonoid(Int.monoid())
.toList()
.let(::println) //[0, 1, 3, 6, 10]
//sampleEnd
Do you like Arrow?
✖