Safe Haskell | Trustworthy |
---|---|
Language | Haskell2010 |
- newtype Mortal f g a = Mortal {}
- mortal :: (forall x. f x -> EitherT a m (x, Mortal f m a)) -> Mortal f m a
- mortal_ :: Object f (EitherT () g) -> Mortal f g ()
- runMortal :: Mortal f m a -> f x -> EitherT a m (x, Mortal f m a)
- runMortal' :: Mortal f m a -> f x -> m (Either a (x, Mortal f m a))
- immortal :: Monad m => Object f m -> Mortal f m x
- reincarnation :: Monad m => (a -> Mortal f m a) -> a -> Object f m
Documentation
Object with a final result.
Object f g ≡ Mortal f g Void
mortal_ :: Object f (EitherT () g) -> Mortal f g () Source
Restricted Mortal
constuctor, which can be applied to transit
, fromFoldable
without ambiguousness.
runMortal' :: Mortal f m a -> f x -> m (Either a (x, Mortal f m a)) Source
reincarnation :: Monad m => (a -> Mortal f m a) -> a -> Object f m Source