packages feed

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 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