packages feed

equivalence 0.3.3 → 0.3.4

raw patch · 2 files changed

+9/−3 lines, 2 filesdep +failPVP ok

version bump matches the API change (PVP)

Dependencies added: fail

API changes (from Hackage documentation)

+ Data.Equivalence.Monad: instance GHC.Base.Monad m => Control.Monad.Fail.MonadFail (Data.Equivalence.Monad.EquivT s c v m)

Files

equivalence.cabal view
@@ -1,5 +1,5 @@ Name:            equivalence-Version:         0.3.3+Version:         0.3.4 License:         BSD3 License-File:    LICENSE Author:          Patrick Bahr@@ -31,11 +31,11 @@ Test-Suite test   Type:                 exitcode-stdio-1.0   Main-is:		Data_Test.hs-  Other-Modules:	Data.Equivalence.Monad_Test+  Other-Modules:	Data.Equivalence.Monad_Test,Data.Equivalence.Monad, Data.Equivalence.STT   hs-source-dirs:	src testsuite/tests   Build-Depends:        base >= 4, template-haskell, containers, mtl >= 2.0.1, QuickCheck >= 2,                         test-framework, test-framework-quickcheck2, STMonadTrans >= 0.4.3,-                        transformers >= 0.2, transformers-compat >= 0.3+                        transformers >= 0.2, transformers-compat >= 0.3, fail  Library   Build-Depends:@@ -45,3 +45,4 @@     Data.Equivalence.STT,     Data.Equivalence.Monad   Hs-Source-Dirs: src+  build-depends: fail
src/Data/Equivalence/Monad.hs view
@@ -56,7 +56,9 @@ import Control.Monad.Trans.Except (ExceptT) import Control.Applicative +import qualified Control.Monad.Fail as Fail + {-| This monad transformer encapsulates computations maintaining an equivalence relation. A monadic computation of type 'EquivT' @s c v m a@ maintains a state space indexed by type @s@, maintains an@@ -99,6 +101,9 @@  instance MonadTrans (EquivT s c v) where     lift = EquivT . lift . lift++instance Monad m => Fail.MonadFail (EquivT s c v m) where+    fail = error  instance (MonadReader r m) => MonadReader r (EquivT s c v m) where     ask = EquivT $ lift ask