packages feed

equivalence 0.2.3 → 0.2.4

raw patch · 3 files changed

+28/−2 lines, 3 filesdep ~basedep ~mtlPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: base, mtl

API changes (from Hackage documentation)

+ Data.Equivalence.Monad: instance (Functor m, Monad m) => Applicative (EquivT s c v m)
+ Data.Equivalence.Monad: instance Functor m => Functor (EquivT s c v m)

Files

equivalence.cabal view
@@ -1,9 +1,9 @@ Name:            equivalence-Version:         0.2.3+Version:         0.2.4 License:         BSD3 License-File:    LICENSE Author:          Patrick Bahr-Maintainer:      paba@diku.dk+Maintainer:      paba@di.ku.dk Homepage:        https://bitbucket.org/paba/equivalence/ bug-reports:     https://bitbucket.org/paba/equivalence/issues/new Synopsis:        Maintaining an equivalence relation implemented as union-find using STT.
src/Data/Equivalence/Monad.hs view
@@ -47,6 +47,7 @@ import Control.Monad.Trans import Control.Monad.Identity import Control.Monad.ST.Trans+import Control.Applicative   {-| This monad transformer encapsulates computations maintaining an@@ -77,6 +78,13 @@ trivial equivalence class descriptors of type @()@. -}  type EquivM' s v = EquivM s () v++instance Functor m => Functor (EquivT s c v m) where+  fmap f (EquivT m) = EquivT $ fmap f m++instance (Functor m, Monad m) => Applicative (EquivT s c v m) where+  pure = EquivT . pure+  (EquivT f) <*> (EquivT a) = EquivT (f <*> a)  instance (Monad m) => Monad (EquivT s c v m) where     EquivT m >>= f = EquivT (m >>= (unEquivT . f))
+ testsuite/tests/Data_Test.hs view
@@ -0,0 +1,18 @@+module Main where++import Test.Framework+import qualified Data.Equivalence.Monad_Test++--------------------------------------------------------------------------------+-- Test Suits+--------------------------------------------------------------------------------++main = defaultMain [tests]++tests = testGroup "Data" [+         Data.Equivalence.Monad_Test.tests+       ]++--------------------------------------------------------------------------------+-- Properties+--------------------------------------------------------------------------------