fs2-reactive-streams

Packages

Implementation of the reactivestreams protocol for fs2

Implementation of the reactivestreams protocol for fs2

See also:
Example:
scala> import fs2._
scala> import fs2.interop.reactivestreams._
scala> import cats.effect.{IO, Resource}, cats.effect.unsafe.implicits.global
scala>
scala> val upstream: Stream[IO, Int] = Stream(1, 2, 3).covary[IO]
scala> val publisher: Resource[IO, StreamUnicastPublisher[IO, Int]] = upstream.toUnicastPublisher
scala> val downstream: Stream[IO, Int] = Stream.resource(publisher).flatMap(_.toStreamBuffered[IO](bufferSize = 16))
scala>
scala> downstream.compile.toVector.unsafeRunSync()
res0: Vector[Int] = Vector(1, 2, 3)