Usage:
resolvers += "jitpack" at "https://jitpack.io"
libraryDependencies += "com.github.cornerman.colibri" %%% "colibri" % "master-SNAPSHOT"
For monix support:
libraryDependencies += "com.github.cornerman.colibri" %%% "colibri-monix" % "master-SNAPSHOT"
For scala.rx support:
libraryDependencies += "com.github.cornerman.colibri" %%% "colibri-rx" % "master-SNAPSHOT"
This library includes a minimal frp library and typeclasses for streaming.
We have prepared typeclasses for integrating other streaming libaries:
Sink[F[_]]
can send values and errors intoF
has anonNext
andonError
method.Source[F[_]]
can subscribe toF
with aSink
(returns a cancelable subscription)CanCancel[T]
can cancelT
to stop a subscriptionSubscriptionOwner[T]
can let typeT
own a subscriptionLiftSink[F[_]]
can lift aSink
into typeF
LiftSource[F[_]]
can lift aSource
into typeF
CreateHandler[F[_]]
how to create subject inF
CreateProHandler[F[_,_]]
how to create subject inF
which has differnt input/output types.
Most important here are Sink
and Source
. Source
is a typeclass for Observables, Sink
is a typeclass for Observers.
Source Code: Source.scala, Sink.scala