stateWriter 0.2.4 → 0.2.6
raw patch · 3 files changed
+8/−8 lines, 3 files
Files
Control/Monad/Trans/RSS/Lazy.hs view
@@ -167,9 +167,9 @@ listen rw = RSST $ \r s -> do (a, (ns, nw)) <- runRSST' rw r s return ((a, nw), (ns, nw))- pass rw = RSST $ \r s -> do- ( (a, fw), (s', w) ) <- runRSST' rw r s- return (a, (s', fw w))+ pass rw = RSST $ \r (s, w) -> do+ ( (a, fw), (s', w') ) <- runRSST' rw r (s, mempty)+ return (a, (s', w `mappend` fw w')) instance (Monoid w, Monad m) => MonadRWS r w s (RSST r w s m)
Control/Monad/Trans/RSS/Strict.hs view
@@ -136,7 +136,7 @@ (<|>) = mplus instance (MonadFix m) => MonadFix (RSST r w s m) where- mfix f = RSST $ \r s -> mfix $ \ (a, _) -> runRSST' (f a) r s+ mfix f = RSST $ \r s -> mfix $ \ ~(a, _) -> runRSST' (f a) r s instance MonadTrans (RSST r w s) where lift m = RSST $ \_ s -> do@@ -165,9 +165,9 @@ listen rw = RSST $ \r s -> do (a, (ns, nw)) <- runRSST' rw r s return ((a, nw), (ns, nw))- pass rw = RSST $ \r s -> do- ( (a, fw), (s', w) ) <- runRSST' rw r s- return (a, (s', fw w))+ pass rw = RSST $ \r (s, w) -> do+ ( (a, fw), (s', w') ) <- runRSST' rw r (s, mempty)+ return (a, (s', w `mappend` fw w')) instance (Monoid w, Monad m) => MonadRWS r w s (RSST r w s m)
stateWriter.cabal view
@@ -2,7 +2,7 @@ -- documentation, see http://haskell.org/cabal/users-guide/ name: stateWriter-version: 0.2.4+version: 0.2.6 synopsis: A faster variant of the RWS monad transformers. description: This is a version of the RWS monad transformers that should be much faster than what's found in transformers. The writer in the strict version does not leak memory. license: BSD3