happstack-clientsession 7.1.1 → 7.2.1
raw patch · 2 files changed
+36/−6 lines, 2 files
Files
happstack-clientsession.cabal view
@@ -1,5 +1,5 @@ Name : happstack-clientsession-Version : 7.1.1+Version : 7.2.1 License : BSD3 License-file : COPYING Synopsis : client-side session data
src/Happstack/Server/ClientSession.hs view
@@ -163,14 +163,14 @@ import Control.Applicative (Applicative, Alternative, optional) import Control.Monad (MonadPlus(..), liftM)-import Control.Monad.Base (MonadBase )-import Control.Monad.Cont (MonadCont)-import Control.Monad.Error (MonadError)+import Control.Monad.Base (MonadBase)+import Control.Monad.Cont (MonadCont, ContT)+import Control.Monad.Error (MonadError, ErrorT, Error) import Control.Monad.Fix (MonadFix) import Control.Monad.Reader (MonadReader(ask, local), ReaderT(..), mapReaderT) import Control.Monad.State (MonadState(get,put), StateT(..), mapStateT)-import Control.Monad.Writer (MonadWriter(tell, listen, pass))-import Control.Monad.RWS (MonadRWS)+import Control.Monad.Writer (MonadWriter(tell, listen, pass), WriterT(..))+import Control.Monad.RWS (MonadRWS, RWST) import Control.Monad.Trans (MonadIO(liftIO), MonadTrans(lift)) import Control.Monad.Trans.Control ( MonadTransControl(..) , MonadBaseControl(..)@@ -490,6 +490,36 @@ getSession = getSessionCST putSession = putSessionCST expireSession = expireSessionCST++instance (Monad m, MonadClientSession sessionData m) => MonadClientSession sessionData (ContT c m) where+ getSession = lift getSession+ putSession = lift . putSession+ expireSession = lift expireSession++instance (Monad m, MonadClientSession sessionData m, Error e) => MonadClientSession sessionData (ErrorT e m) where+ getSession = lift getSession+ putSession = lift . putSession+ expireSession = lift expireSession++instance (Monad m, MonadClientSession sessionData m) => MonadClientSession sessionData (ReaderT r m) where+ getSession = lift getSession+ putSession = lift . putSession+ expireSession = lift expireSession++instance (Monad m, MonadClientSession sessionData m) => MonadClientSession sessionData (StateT s m) where+ getSession = lift getSession+ putSession = lift . putSession+ expireSession = lift expireSession++instance (Monad m, MonadClientSession sessionData m, Monoid w) => MonadClientSession sessionData (WriterT w m) where+ getSession = lift getSession+ putSession = lift . putSession+ expireSession = lift expireSession++instance (Monad m, MonadClientSession sessionData m, Monoid w) => MonadClientSession sessionData (RWST r w s m) where+ getSession = lift getSession+ putSession = lift . putSession+ expireSession = lift expireSession ------------------------------------------------------------------------------ -- liftSessionStateT