monad-supply 0.3 → 0.4
raw patch · 2 files changed
+4/−3 lines, 2 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
+ Control.Monad.Supply: instance (Monad m, Functor m) => Applicative (SupplyT s m)
+ Control.Monad.Supply: instance Applicative (Supply s)
Files
- monad-supply.cabal +1/−1
- src/Control/Monad/Supply.hs +3/−2
monad-supply.cabal view
@@ -1,6 +1,6 @@ Name: monad-supply Build-type: Simple-Version: 0.3+Version: 0.4 Cabal-Version: >= 1.6 Synopsis: Stateful supply monad. Description: Support for computations which consume values from a (possibly infinite) supply.
src/Control/Monad/Supply.hs view
@@ -18,6 +18,7 @@ , supplies ) where +import Control.Applicative import Control.Monad.Identity import Control.Monad.State import Control.Monad.Error@@ -31,11 +32,11 @@ -- | Supply monad transformer. newtype SupplyT s m a = SupplyT (StateT [s] m a)- deriving (Functor, Monad, MonadTrans, MonadIO)+ deriving (Functor, Applicative, Monad, MonadTrans, MonadIO) -- | Supply monad. newtype Supply s a = Supply (SupplyT s Identity a)- deriving (Functor, Monad, MonadSupply s)+ deriving (Functor, Applicative, Monad, MonadSupply s) instance Monad m => MonadSupply s (SupplyT s m) where supply = SupplyT $ do (x:xs) <- get