objective-0.6.5: Extensible objects

Safe HaskellTrustworthy
LanguageHaskell2010

Control.Object.Stream

Synopsis

Documentation

($$) :: (Monad m, Adjunction f g) => Object g m -> Object f m -> m x infix 1 Source

For every adjunction f ⊣ g, we can "connect" Object g m and Object f m permanently.

($?$) :: (Monad m, Adjunction f g) => Object g (EitherT a m) -> Object f (EitherT a m) -> m a Source

(!$$!) :: (Monad m, Adjunction f g) => Mortal g m a -> Mortal f m a -> m a Source

fromFoldable :: (Foldable t, Alternative m, Representable f) => t (Rep f) -> Object f m Source

Create a source from a Foldable container.

mapL :: (Adjunction f g, Adjunction f' g', Functor m) => (Rep g' -> Rep g) -> Object f m -> Object f' m Source

mapR :: (Representable f, Representable g, Functor m) => (Rep f -> Rep g) -> Object f m -> Object g m Source

filterL :: (Adjunction f g, Applicative m) => (Rep g -> Bool) -> Object f m -> Object f m Source

filterR :: (Representable f, Monad m) => (Rep f -> Bool) -> Object f m -> Object f m Source

($$@) :: (Representable f, Representable g, Monad m) => Object f m -> Object (Request (Rep f) (Rep g)) m -> Object g m Source

Attack a rank-1 Mealy machine to a source.

(@$$) :: (Adjunction f g, Adjunction f' g', Monad m) => Object (Request (Rep g') (Rep g)) m -> Object f m -> Object f' m Source

Attach a rank-1 Mealy machine into a sink.