Safe Haskell | Trustworthy |
---|---|
Language | Haskell2010 |
- ($$) :: (Monad m, Adjunction f g) => Object g m -> Object f m -> m x
- ($?$) :: (Monad m, Adjunction f g) => Object g (EitherT a m) -> Object f (EitherT a m) -> m a
- (!$$!) :: (Monad m, Adjunction f g) => Mortal g m a -> Mortal f m a -> m a
- fromFoldable :: (Foldable t, Alternative m, Representable f) => t (Rep f) -> Object f m
- mapL :: (Adjunction f g, Adjunction f' g', Functor m) => (Rep g' -> Rep g) -> Object f m -> Object f' m
- mapR :: (Representable f, Representable g, Functor m) => (Rep f -> Rep g) -> Object f m -> Object g m
- filterL :: (Adjunction f g, Applicative m) => (Rep g -> Bool) -> Object f m -> Object f m
- filterR :: (Representable f, Monad m) => (Rep f -> Bool) -> Object f m -> Object f m
- ($$@) :: (Representable f, Representable g, Monad m) => Object f m -> Object (Request (Rep f) (Rep g)) m -> Object g m
- (@$$) :: (Adjunction f g, Adjunction f' g', Monad m) => Object (Request (Rep g') (Rep g)) m -> Object f m -> Object f' m
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
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