key 0.1.1.0 → 0.1.2.0
raw patch · 3 files changed
+6/−5 lines, 3 filessetup-changedPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
+ Control.Monad.Trans.Key: lift :: f a -> KeyringT s f a
Files
- Control/Monad/Trans/Key.hs +5/−2
- Setup.hs +0/−2
- key.cabal +1/−1
Control/Monad/Trans/Key.hs view
@@ -1,13 +1,13 @@ {-# LANGUAGE RankNTypes #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} -module Control.Monad.Trans.Key (Key, newKey, Keyring, unKeyring, KeyringT, unKeyringT) where+module Control.Monad.Trans.Key (Key, newKey, Keyring, unKeyring, KeyringT, unKeyringT, lift) where import Control.Applicative import Control.Monad (MonadPlus (..), guard) import Control.Monad.Fail import Control.Monad.Fix-import Control.Monad.Trans.Class+import Control.Monad.Trans.Class (MonadTrans) import Control.Monad.Trans.Reader import Data.Functor.Identity import Data.IORef@@ -31,6 +31,9 @@ newtype KeyringT s f a = KeyringT (ReaderT (IORef Natural) f a) deriving (Functor, Applicative, Alternative, Monad, MonadPlus, MonadFix, MonadFail, MonadTrans)++lift :: f a -> KeyringT s f a+lift = KeyringT . ReaderT . pure unKeyringT :: (∀ s . KeyringT s f a) -> f a unKeyringT (KeyringT (ReaderT f)) = f $ unsafePerformIO $ newIORef 0
− Setup.hs
@@ -1,2 +0,0 @@-import Distribution.Simple-main = defaultMain
key.cabal view
@@ -1,5 +1,5 @@ name: key-version: 0.1.1.0+version: 0.1.2.0 synopsis: Type-safe unconstrained dynamic typing description: A library of monadic typed keys which can be compared for equality, returning an equality proof if equal.