Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Data.Fallible
Synopsis
- class Applicative f => Fallible f where
- type Failure f :: *
- tryFallible :: f a -> Either (Failure f) a
- (??=) :: (Applicative f, Fallible t) => t a -> (Failure t -> f a) -> f a
- (???) :: (Applicative f, Fallible t) => t a -> f a -> f a
- (!?=) :: (Monad m, Fallible t) => m (t a) -> (Failure t -> m a) -> m a
- (!??) :: (Monad m, Fallible t) => m (t a) -> m a -> m a
- catchFailure :: (Monad m, Fallible t) => m (t a) -> (Failure t -> m a) -> m a
- catchFailure_ :: (Monad m, Fallible t) => m (t a) -> m a -> m a
- exit :: m r -> ContT r m a
- exitA :: Applicative m => r -> ContT r m a
- module Control.Monad.Trans.Cont
- lift :: (MonadTrans t, Monad m) => m a -> t m a
Documentation
class Applicative f => Fallible f where Source #
Types that may contain failures.
Methods
tryFallible :: f a -> Either (Failure f) a Source #
Get a success or a failure.
tryFallible
(pure a) ≡ Right a
(???) :: (Applicative f, Fallible t) => t a -> f a -> f a infixl 1 Source #
catchFailure_ :: (Monad m, Fallible t) => m (t a) -> m a -> m a Source #
exitA :: Applicative m => r -> ContT r m a Source #
module Control.Monad.Trans.Cont
lift :: (MonadTrans t, Monad m) => m a -> t m a #
Lift a computation from the argument monad to the constructed monad.