packages feed

comonad-extras 0.1.1 → 0.1.2

raw patch · 3 files changed

+19/−3 lines, 3 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Control.Comonad.Store.MemoTrie: instance (ComonadEnv m w, HasTrie s) => ComonadEnv m (StoreT s w)
+ Control.Comonad.Store.MemoTrie: instance (ComonadTraced m w, HasTrie s) => ComonadTraced m (StoreT s w)
+ Control.Comonad.Store.Pointer: instance (ComonadEnv m w, Ix i) => ComonadEnv m (PointerT i w)
+ Control.Comonad.Store.Pointer: instance (ComonadTraced m w, Ix i) => ComonadTraced m (PointerT i w)

Files

Control/Comonad/Store/MemoTrie.hs view
@@ -1,4 +1,4 @@-{-# LANGUAGE CPP, TypeOperators, FlexibleInstances, MultiParamTypeClasses #-}+{-# LANGUAGE CPP, TypeOperators, FlexibleInstances, MultiParamTypeClasses, UndecidableInstances #-} ----------------------------------------------------------------------------- -- | -- Module      :  Control.Comonad.Store.MemoTrie@@ -34,6 +34,8 @@ import Control.Comonad.Hoist.Class import Control.Comonad.Trans.Class import Control.Comonad.Store.Class+import Control.Comonad.Env.Class+import Control.Comonad.Traced.Class import Data.Functor.Identity import Data.MemoTrie @@ -93,3 +95,8 @@   peek s (StoreT g _) = untrie (extract g) s   peeks f (StoreT g s) = untrie (extract g) (f s) +instance (ComonadTraced m w, HasTrie s) => ComonadTraced m (StoreT s w) where+  trace m = trace m . lower++instance (ComonadEnv m w, HasTrie s) => ComonadEnv m (StoreT s w) where +  ask = ask . lower
Control/Comonad/Store/Pointer.hs view
@@ -1,4 +1,4 @@-{-# LANGUAGE CPP, FlexibleInstances, MultiParamTypeClasses, FunctionalDependencies #-}+{-# LANGUAGE CPP, FlexibleInstances, MultiParamTypeClasses, FunctionalDependencies, UndecidableInstances #-} ----------------------------------------------------------------------------- -- | -- Module      :  Control.Comonad.Store.Pointer@@ -42,6 +42,8 @@ import Control.Comonad.Hoist.Class import Control.Comonad.Trans.Class import Control.Comonad.Store.Class +import Control.Comonad.Traced.Class +import Control.Comonad.Env.Class  import Data.Functor.Identity import Data.Array @@ -103,3 +105,10 @@ -- | Extract the bounds of the currently focused array pointerBounds :: (Comonad w, Ix i) => PointerT i w a -> (i,i) pointerBounds (PointerT g _) = bounds (extract g)++instance (ComonadTraced m w, Ix i) => ComonadTraced m (PointerT i w) where+  trace m = trace m . lower++instance (ComonadEnv m w, Ix i)  => ComonadEnv m (PointerT i w) where+  ask = ask . lower+
comonad-extras.cabal view
@@ -1,6 +1,6 @@ name:          comonad-extras category:      Control, Comonads-version:       0.1.1+version:       0.1.2 license:       BSD3 cabal-version: >= 1.6 license-file:  LICENSE