packages feed

Dangerous 0.1.2 → 0.2

raw patch · 2 files changed

+4/−9 lines, 2 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Control.Dangerous: class Monad m => Errorable m
+ Control.Dangerous: die :: (Errorable m, Show s) => Int -> s -> m a
+ Control.Dangerous: die_ :: (Errorable m, Show s) => Int -> s -> m ()
+ Control.Dangerous: exit :: Errorable m => Exit -> m a
+ Control.Dangerous: exit_ :: Errorable m => Exit -> m ()
+ Control.Dangerous: log :: Errorable m => Warning -> m ()

Files

Dangerous.cabal view
@@ -1,5 +1,5 @@ Name:          Dangerous-Version:       0.1.2+Version:       0.2 License:       MIT License-file:  LICENSE Category:      Error Handling
src/Control/Dangerous.hs view
@@ -3,11 +3,7 @@     , Warning(..)     , Dangerous(..)     , DangerousT(..)-    , warn-    , throw-    , throw_-    , stop-    , stop_+    , Errorable(..)     , succeeded     , failed     , stopped@@ -87,9 +83,8 @@     fail s = Dangerous (Left $ Failure s, [])     return x = Dangerous (Right x, [])     (Dangerous (Left e, ws)) >>= _ = Dangerous (Left e, ws)-    (Dangerous (Right v, ws)) >>= f = Dangerous $ case f v of-        Dangerous (Right v', ws') -> (Right v', ws ++ ws')-        Dangerous (Left e, ws') -> (Left e, ws ++ ws')+    (Dangerous (Right v, ws)) >>= f = Dangerous $+        second (ws ++) $ runDangerous $ f v  instance Errorable Dangerous where     log w = Dangerous (Right (), [w])