| Copyright | (c) 2009 - 2015 Peter Trsko |
|---|---|
| License | BSD3 |
| Maintainer | peter.trsko@gmail.com |
| Stability | stable |
| Portability | CPP, NoImplicitPrelude, PolyKinds, RankNTypes, DeriveDataTypeable, DeriveGeneric |
| Safe Haskell | Safe-Inferred |
| Language | Haskell2010 |
Control.Monad.TaggedException.Internal.Throws
Description
Data type for associating monadic value with phantom type. In case of this library it will always be associated with a type of exception it may throw.
- newtype Throws e m a = Throws {
- hideException :: m a
- liftBindLike :: (m a -> (b -> m c) -> m d) -> Throws e m a -> (b -> Throws e m c) -> Throws e m d
- liftCCLike :: (((a -> m b) -> m' c) -> m'' d) -> ((a -> Throws e m b) -> Throws e m' c) -> Throws e m'' d
- liftEmbedLike :: (forall a. m a -> Throws e n a) -> Throws e' m b -> Throws e n b
- liftHoistLike :: (forall a. m a -> n a) -> Throws e m b -> Throws e' n b
- liftMask :: (((forall a. m a -> m a) -> m b) -> m b) -> ((forall a. Throws e m a -> Throws e m a) -> Throws e m b) -> Throws e m b
Documentation
Exception tag.
Constructors
| Throws | |
Fields
| |
Instances
| (Monoid w, MonadReader r m, MonadWriter w m, MonadState s m) => MonadRWS r w s (Throws k * e m) | Since |
| MonadError e m => MonadError e (Throws k * e' m) | Since |
| MonadReader r m => MonadReader r (Throws k * e m) | Since |
| MonadState s m => MonadState s (Throws k * e m) | Since |
| (Monoid w, MonadWriter w m) => MonadWriter w (Throws k * e m) | Since |
| Typeable (k -> (k -> *) -> k -> *) (Throws k k) | |
| MFunctor (Throws k * e) | Since |
| MMonad (Throws k * e) | Since |
| MonadTrans (Throws k * e) | |
| Alternative f => Alternative (Throws k * e f) | |
| Monad m => Monad (Throws k * e m) | |
| Functor f => Functor (Throws k * e f) | |
| MonadPlus m => MonadPlus (Throws k * e m) | |
| Applicative f => Applicative (Throws k * e f) | |
| MonadThrow m => MonadThrow (Throws k * e m) | Since |
| MonadCatch m => MonadCatch (Throws k * e m) | Since |
| MonadMask m => MonadMask (Throws k * e m) | Since |
| MonadIO m => MonadIO (Throws k * e m) | |
| MonadCont m => MonadCont (Throws k * e m) | Since |
| Generic (Throws k k e m a) | |
| type Rep (Throws k k1 e m a) |
liftBindLike :: (m a -> (b -> m c) -> m d) -> Throws e m a -> (b -> Throws e m c) -> Throws e m d Source
liftCCLike :: (((a -> m b) -> m' c) -> m'' d) -> ((a -> Throws e m b) -> Throws e m' c) -> Throws e m'' d Source
liftEmbedLike :: (forall a. m a -> Throws e n a) -> Throws e' m b -> Throws e n b Source
liftHoistLike :: (forall a. m a -> n a) -> Throws e m b -> Throws e' n b Source