Safe Haskell | None |
---|---|
Language | Haskell2010 |
- type SyncExcept m cl a b e = MSFExcept (ReaderT (TimeInfo cl) m) a b e
- commuteReaderExcept :: ReaderT r (ExceptT e m) a -> ExceptT e (ReaderT r m) a
- try :: Monad m => SyncSF (ExceptT e m) cl a b -> SyncExcept m cl a b e
- once :: Monad m => (a -> m e) -> SyncExcept m cl a b e
- once_ :: Monad m => m e -> SyncExcept m cl a b e
- throwS :: Monad m => SyncSF (ExceptT e m) cl e a
- throwOn' :: Monad m => SyncSF (ExceptT e m) cl (Bool, e) ()
- throwOn :: Monad m => e -> SyncSF (ExceptT e m) cl Bool ()
- step :: Monad m => (a -> m (b, e)) -> SyncExcept m cl a b e
- currentInput :: Monad m => SyncExcept m cl e b e
- safe :: Monad m => MSF m a b -> MSFExcept m a b e
- safely :: Monad m => MSFExcept m a b Empty -> MSF m a b
- data Empty :: *
- exceptS :: Monad m => MSF (ExceptT e m) a b -> MSF m a (Either e b)
- runMSFExcept :: MSFExcept m a b e -> MSF (ExceptT e m) a b
Documentation
commuteReaderExcept :: ReaderT r (ExceptT e m) a -> ExceptT e (ReaderT r m) a Source #
Commute the effects of the |ReaderT| and the |ExceptT| monad.
try :: Monad m => SyncSF (ExceptT e m) cl a b -> SyncExcept m cl a b e Source #
Enter the monad context in the exception for |SyncSF|s in the |ExceptT| monad.
once :: Monad m => (a -> m e) -> SyncExcept m cl a b e Source #
Within the same tick, perform a monadic action, and immediately throw the value as an exception.
once_ :: Monad m => m e -> SyncExcept m cl a b e Source #
A variant of |once| without input.
Will be in dunai-0.1.2
step :: Monad m => (a -> m (b, e)) -> SyncExcept m cl a b e Source #
Advances a single tick with the given Kleisli arrow, and then throws an exception.
currentInput :: Monad m => SyncExcept m cl e b e Source #
Immediately throw the current input as an exception.
runMSFExcept :: MSFExcept m a b e -> MSF (ExceptT e m) a b #