equivalence 0.2.5 → 0.2.6
raw patch · 2 files changed
+21/−1 lines, 2 filesdep ~mtlPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: mtl
API changes (from Hackage documentation)
+ Data.Equivalence.Monad: instance MonadEquiv c v d m => MonadEquiv c v d (ExceptT e m)
Files
- equivalence.cabal +1/−1
- src/Data/Equivalence/Monad.hs +20/−0
equivalence.cabal view
@@ -1,5 +1,5 @@ Name: equivalence-Version: 0.2.5+Version: 0.2.6 License: BSD3 License-File: LICENSE Author: Patrick Bahr
src/Data/Equivalence/Monad.hs view
@@ -6,6 +6,11 @@ UndecidableInstances, FunctionalDependencies #-} +-- Suppress warnings about ''Control.Monad.Error'' being deprecated.++{-# OPTIONS_GHC -fno-warn-deprecations #-}++ -------------------------------------------------------------------------------- -- | -- Module : Data.Equivalence.Monad@@ -42,6 +47,7 @@ import Control.Monad.Writer import Control.Monad.Reader+import Control.Monad.Except import Control.Monad.Error import Control.Monad.State import Control.Monad.Trans@@ -291,6 +297,20 @@ x === y = lift $ (===) x y desc x = lift $ desc x remove x = lift $ remove x++instance (MonadEquiv c v d m) => MonadEquiv c v d (ExceptT e m) where+ equivalent x y = lift $ equivalent x y+ classDesc = lift . classDesc+ equateAll x = lift $ equateAll x+ equate x y = lift $ equate x y+ removeClass x = lift $ removeClass x+ getClass x = lift $ getClass x+ combineAll x = lift $ combineAll x+ combine x y = lift $ combine x y+ x === y = lift $ (===) x y+ desc x = lift $ desc x+ remove x = lift $ remove x+ instance (MonadEquiv c v d m) => MonadEquiv c v d (StateT s m) where equivalent x y = lift $ equivalent x y