free 2.0.3 → 2.1
raw patch · 3 files changed
+27/−53 lines, 3 filesdep ~comonaddep ~comonad-transformersdep ~comonads-fdPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: comonad, comonad-transformers, comonads-fd, data-lens, distributive, mtl, semigroupoids, semigroups, transformers
API changes (from Hackage documentation)
- Control.Comonad.Cofree.Class: instance ComonadCofree f w => ComonadCofree f (DiscontT k w)
Files
- Control/Comonad/Cofree.hs +4/−0
- Control/Comonad/Cofree/Class.hs +11/−41
- free.cabal +12/−12
Control/Comonad/Cofree.hs view
@@ -140,7 +140,11 @@ typeOf = typeOfDefault cofreeTyCon :: TyCon+#if __GLASGOW_HASKELL__ < 704 cofreeTyCon = mkTyCon "Control.Comonad.Cofree.Cofree"+#else+cofreeTyCon = mkTyCon3 "free" "Control.Comonad.Cofree" "Cofree"+#endif {-# NOINLINE cofreeTyCon #-} instance
Control/Comonad/Cofree/Class.hs view
@@ -12,23 +12,16 @@ -- Stability : experimental -- Portability : fundeps, MPTCs -----------------------------------------------------------------------------module Control.Comonad.Cofree.Class +module Control.Comonad.Cofree.Class ( ComonadCofree(..) ) where import Control.Applicative import Control.Comonad-import qualified Control.Comonad.Trans.Env.Strict as Strict-import qualified Control.Comonad.Trans.Store.Strict as Strict-import qualified Control.Comonad.Trans.Discont.Strict as Strict-import qualified Control.Comonad.Trans.Env.Lazy as Lazy-import qualified Control.Comonad.Trans.Store.Lazy as Lazy-import qualified Control.Comonad.Trans.Discont.Lazy as Lazy-import qualified Control.Comonad.Trans.Traced as Simple-import qualified Control.Comonad.Trans.Traced.Memo as Memo-import qualified Control.Comonad.Trans.Store.Memo as Memo-import qualified Control.Comonad.Trans.Discont.Memo as Memo-import Control.Comonad.Trans.Identity +import Control.Comonad.Trans.Env+import Control.Comonad.Trans.Store+import Control.Comonad.Trans.Traced+import Control.Comonad.Trans.Identity import Data.Semigroup class (Functor f, Comonad w) => ComonadCofree f w | w -> f where@@ -36,35 +29,12 @@ instance ComonadCofree f w => ComonadCofree f (IdentityT w) where unwrap = fmap IdentityT . unwrap . runIdentityT- -instance ComonadCofree f w => ComonadCofree f (Strict.EnvT e w) where- unwrap (Strict.EnvT e wa) = Strict.EnvT e <$> unwrap wa -instance ComonadCofree f w => ComonadCofree f (Lazy.EnvT e w) where- unwrap (Lazy.EnvT e wa) = Lazy.EnvT e <$> unwrap wa--instance ComonadCofree f w => ComonadCofree f (Strict.StoreT s w) where- unwrap (Strict.StoreT wsa s) = flip Strict.StoreT s <$> unwrap wsa--instance ComonadCofree f w => ComonadCofree f (Lazy.StoreT s w) where- unwrap (Lazy.StoreT wsa s) = flip Lazy.StoreT s <$> unwrap wsa--instance ComonadCofree f w => ComonadCofree f (Memo.StoreT s w) where- unwrap w = flip Memo.storeT s <$> unwrap wsa- where (wsa, s) = Memo.runStoreT w--instance (ComonadCofree f w, Semigroup m, Monoid m) => ComonadCofree f (Simple.TracedT m w) where- unwrap (Simple.TracedT wma) = Simple.TracedT <$> unwrap wma--instance (ComonadCofree f w, Semigroup m, Monoid m) => ComonadCofree f (Memo.TracedT m w) where- unwrap = fmap Memo.tracedT . unwrap . Memo.runTracedT--instance ComonadCofree f w => ComonadCofree f (Strict.DiscontT k w) where- unwrap (Strict.DiscontT f ws) = Strict.DiscontT f <$> unwrap ws+instance ComonadCofree f w => ComonadCofree f (EnvT e w) where+ unwrap (EnvT e wa) = EnvT e <$> unwrap wa -instance ComonadCofree f w => ComonadCofree f (Lazy.DiscontT k w) where- unwrap (Lazy.DiscontT f ws) = Lazy.DiscontT f <$> unwrap ws+instance ComonadCofree f w => ComonadCofree f (StoreT s w) where+ unwrap (StoreT wsa s) = flip StoreT s <$> unwrap wsa -instance ComonadCofree f w => ComonadCofree f (Memo.DiscontT k w) where- unwrap w = Memo.discontT f <$> unwrap wa- where (f, wa) = Memo.runDiscontT w+instance (ComonadCofree f w, Semigroup m, Monoid m) => ComonadCofree f (TracedT m w) where+ unwrap (TracedT wma) = TracedT <$> unwrap wma
free.cabal view
@@ -1,6 +1,6 @@ name: free category: Control, Monads-version: 2.0.3+version: 2.1 license: BSD3 cabal-version: >= 1.6 license-file: LICENSE@@ -24,17 +24,17 @@ FlexibleInstances UndecidableInstances - build-depends: + build-depends: base >= 4 && < 5,- distributive >= 0.2 && < 0.3,- transformers >= 0.2.0 && < 0.3,- mtl >= 2.0.1.0 && < 2.1,- semigroupoids >= 1.2.6.1 && < 1.3,- comonad >= 1.1.1.1 && < 1.2,- comonad-transformers >= 2.0.3 && < 2.1,- comonads-fd >= 2.0.2.1 && < 2.1,- data-lens >= 2.0.2 && < 2.1,- semigroups >= 0.8 && < 0.9+ distributive >= 0.2.1 && < 0.3,+ transformers >= 0.2.0 && < 0.4,+ mtl >= 2.0.1.0 && < 2.2,+ semigroupoids >= 1.2.6.1 && < 1.4,+ comonad >= 1.1.1.3 && < 1.2,+ comonad-transformers >= 2.1 && < 2.2,+ comonads-fd >= 2.1 && < 2.2,+ data-lens >= 2.0.3 && < 2.1,+ semigroups >= 0.8.2 && < 0.9 if impl(ghc) cpp-options: -DGHC_TYPEABLE@@ -47,4 +47,4 @@ Control.Comonad.Cofree Control.Comonad.Cofree.Class - ghc-options: -Wall + ghc-options: -Wall