monad-abort-fd 0.6.2 → 0.7
raw patch · 3 files changed
+8/−7 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
- Control.Monad.Finish.Class: instance Control.Monad.Abort.Class.MonadAbort e μ => Control.Monad.Abort.Class.MonadAbort e (Control.Monad.Trans.Finish.FinishT f μ)
- Control.Monad.Finish.Class: instance Control.Monad.Abort.Class.MonadRecover e μ => Control.Monad.Abort.Class.MonadRecover e (Control.Monad.Trans.Finish.FinishT f μ)
+ Control.Monad.Abort.Class: instance Control.Monad.Abort.Class.MonadAbort e μ => Control.Monad.Abort.Class.MonadAbort e (Control.Monad.Trans.Finish.FinishT f μ)
+ Control.Monad.Abort.Class: instance Control.Monad.Abort.Class.MonadRecover e μ => Control.Monad.Abort.Class.MonadRecover e (Control.Monad.Trans.Finish.FinishT f μ)
Files
- monad-abort-fd.cabal +1/−1
- src/Control/Monad/Abort/Class.hs +7/−0
- src/Control/Monad/Finish/Class.hs +0/−6
monad-abort-fd.cabal view
@@ -1,5 +1,5 @@ Name: monad-abort-fd-Version: 0.6.2+Version: 0.7 Category: Control Stability: experimental Synopsis: A better error monad transformer
src/Control/Monad/Abort/Class.hs view
@@ -43,6 +43,7 @@ import Control.Monad.Trans.Select (SelectT(..)) import Control.Monad.Trans.Abort (AbortT(..)) import qualified Control.Monad.Trans.Abort as A+import Control.Monad.Trans.Finish (FinishT(..)) import Control.Monad.STM (STM, throwSTM, catchSTM) -- | Class of monads that support raising of errors.@@ -220,3 +221,9 @@ instance MonadAbort e μ ⇒ MonadAbort e (SelectT r μ) where abort = lift . abort++instance MonadAbort e μ ⇒ MonadAbort e (FinishT f μ) where+ abort = lift . abort++instance MonadRecover e μ ⇒ MonadRecover e (FinishT f μ) where+ recover m h = FinishT $ recover (runFinishT m) (runFinishT . h)
src/Control/Monad/Finish/Class.hs view
@@ -51,12 +51,6 @@ throwError = lift . throwError catchError m h = FinishT $ catchError (runFinishT m) (runFinishT . h) -instance MonadAbort e μ ⇒ MonadAbort e (FinishT f μ) where- abort = lift . abort--instance MonadRecover e μ ⇒ MonadRecover e (FinishT f μ) where- recover m h = FinishT $ recover (runFinishT m) (runFinishT . h)- instance MonadReader r μ ⇒ MonadReader r (FinishT f μ) where ask = lift ask local f = FinishT . local f . runFinishT