monad-journal 0.1.0.0 → 0.2.0.0
raw patch · 2 files changed
+11/−11 lines, 2 files
Files
- Control/Monad/Trans/Journal.hs +10/−10
- monad-journal.cabal +1/−1
Control/Monad/Trans/Journal.hs view
@@ -13,9 +13,9 @@ -} module Control.Monad.Trans.Journal (- -- * LoggerT monad transformer- LoggerT- , runLoggerT+ -- * JournalT monad transformer+ JournalT+ , runJournalT , module X ) where @@ -25,12 +25,12 @@ import Control.Monad.Trans.State ( StateT, get, modify, put, runStateT ) import Data.Monoid ( Monoid(..) ) -newtype LoggerT w m a = LoggerT (StateT w m a) deriving (Applicative,Functor,Monad,MonadTrans,MonadIO)+newtype JournalT w m a = JournalT (StateT w m a) deriving (Applicative,Functor,Monad,MonadTrans,MonadIO) -instance (Monoid w, Monad m) => MonadJournal w (LoggerT w m) where- journal = LoggerT . modify . flip mappend- history = LoggerT get- clear = LoggerT (put mempty)+instance (Monoid w, Monad m) => MonadJournal w (JournalT w m) where+ journal = JournalT . modify . flip mappend+ history = JournalT get+ clear = JournalT (put mempty) -runLoggerT :: (Monoid w, Monad m) => LoggerT w m a -> m (a,w)-runLoggerT (LoggerT s) = runStateT s mempty+runJournalT :: (Monoid w, Monad m) => JournalT w m a -> m (a,w)+runJournalT (JournalT s) = runStateT s mempty
monad-journal.cabal view
@@ -1,6 +1,6 @@ name: monad-journal license: PublicDomain-version: 0.1.0.0+version: 0.2.0.0 synopsis: On-the-fly logging typeclass and monad transformer description: This package provides a typeclass for logging situations when you want to deal with the logs on-the-fly.