packages feed

data-accessor-transformers 0.2.1 → 0.2.1.1

raw patch · 4 files changed

+46/−6 lines, 4 filesdep ~basedep ~data-accessordep ~transformersPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: base, data-accessor, transformers

API changes (from Hackage documentation)

Files

data-accessor-transformers.cabal view
@@ -1,5 +1,5 @@ Name:             data-accessor-transformers-Version:          0.2.1+Version:          0.2.1.1 License:          BSD3 License-File:     LICENSE Author:           Henning Thielemann <haskell@henning-thielemann.de>@@ -9,7 +9,10 @@ Category:         Data -- Portability:      Haskell98 Build-Type:       Simple-Build-Depends:    base>=1.0, data-accessor >=0.2 && <0.3, transformers >=0.0.1 && <0.2+Build-Depends:+  data-accessor >=0.2 && <0.4,+  transformers >=0.2 && <0.3,+  base >=1.0 && <6 Synopsis:         Use Accessor to access state in transformers State monad Description:      Use Accessor to access state in transformers State monad GHC-Options:      -Wall@@ -18,3 +21,5 @@ Exposed-Modules:   Data.Accessor.Monad.Trans.RWS   Data.Accessor.Monad.Trans.State+Other-Modules:+  Data.Accessor.Monad.Trans.Example
+ src/Data/Accessor/Monad/Trans/Example.hs view
@@ -0,0 +1,35 @@+module Data.Accessor.Monad.Trans.Example where++import Data.Accessor.Basic ((.>), )+import Data.Accessor.Tuple (first, second, )++import qualified Data.Accessor.Basic as Accessor++import Data.Accessor.Monad.Trans.State ((%=), (%:), )+import qualified Data.Accessor.Monad.Trans.State as AState+import Control.Monad.Trans.State (State)++import Prelude hiding (init)+++state :: State (Char,Int) Int+state =+   do AState.set first 'a'+      AState.modify second succ+      AState.get second++stateInfix :: State ((Char, Int), String) Int+stateInfix =+   do str <- AState.get second+      first.>first %= 'a'+      first.>second %: succ+      first.>first %= 'b'+      second %= '!' : str+      AState.get (first.>second)++stateLift :: State (Int, (Bool, Char)) ()+stateLift = do+  first %= 42+  AState.lift second $ do+    first  %: not+    second %= 'q'
src/Data/Accessor/Monad/Trans/RWS.hs view
@@ -3,9 +3,9 @@  import qualified Data.Accessor.Basic as Accessor import qualified Control.Monad.Trans.RWS as RWS-import qualified Control.Monad.Trans as Trans+import qualified Control.Monad.Trans.Class as Trans import Control.Monad.Trans.RWS (RWS, runRWS, RWST(runRWST), )-import Control.Monad.Trans (MonadTrans)+import Control.Monad.Trans.Class (MonadTrans, ) import Data.Monoid (Monoid)  
src/Data/Accessor/Monad/Trans/State.hs view
@@ -3,9 +3,9 @@  import qualified Data.Accessor.Basic as Accessor import qualified Control.Monad.Trans.State as State-import qualified Control.Monad.Trans as Trans+import qualified Control.Monad.Trans.Class as Trans import Control.Monad.Trans.State (State, runState, StateT(runStateT), )-import Control.Monad.Trans (MonadTrans)+import Control.Monad.Trans.Class (MonadTrans, )  -- * accessors in the form of actions in the state monad