cps.stream
package cps.stream
Type members
Classlikes
Minimal mutable async stream.
Minimal mutable async stream.
- Companion:
- object
- Source:
- AsyncIterator.scala
class AsyncIteratorEmitAbsorber[F[_], C <: CpsMonadContext[F], T](using ec: ExecutionContext, auxAsyncMonad: Aux[F, C]) extends CpsAsyncEmitAbsorber4[AsyncIterator[F, T], F, C, T]
- Source:
- AsyncIterator.scala
class AsyncListEmitAbsorber[F[_], C <: CpsMonadContext[F], T](using ec: ExecutionContext, auxMonad: Aux[F, C]) extends BaseUnfoldCpsAsyncEmitAbsorber[AsyncList[F, T], F, C, T]
- Source:
- AsyncList.scala
class AsyncListIterator[F[_], T](l: AsyncList[F, T])(implicit evidence$1: CpsConcurrentMonad[F]) extends AsyncIterator[F, T]
- Source:
- AsyncListIterator.scala
trait BaseUnfoldCpsAsyncEmitAbsorber[R, F[_], C <: CpsMonadContext[F], T](using ec: ExecutionContext, auxAsyncMonad: Aux[F, C]) extends CpsAsyncEmitAbsorber4[R, F, C, T]
This typeclass should be implemented for streams, which can be a target of asyncStream. i.e. if we want use generator of form
This typeclass should be implemented for streams, which can be a target of asyncStream. i.e. if we want use generator of form
asyncStream[R] { out =>
...
out.emit(value)
}
Then we should have an implementation of given CpsAsyncEmitAbsorber[R]
in the current scope.
- Companion:
- object
- Source:
- CpsAsyncEmitAbsorber.scala
trait CpsAsyncEmitAbsorber4[R, F[_], C <: CpsMonadContext[F], T](using val auxAsyncMonad: Aux[F, C]) extends CpsAsyncEmitAbsorber[R]
- Source:
- CpsAsyncEmitAbsorber.scala
Emitter which should be a parameter of asyncStream expression.
Emitter which should be a parameter of asyncStream expression.
asyncStream[AsyncList[F,Int]] { out =>
for(i <- 1 to 10)
out.emit(i)
}
Here out have a CpsAsyncEmitter[AsyncList[F,Int],F,E]
type.
- See also:
[cps. asyncStream]
- Source:
- CpsAsyncEmitter.scala