packages feed

mysnapsession-0.2: src/Snap/Extension/Session.hs

{-# LANGUAGE TypeFamilies #-}

{-|
    'Snap.Extension.Session.Memory' exports the 'MonadSessionMemory' interface
    which allows you to keep an in-memory session object for each client session
    of a web application.
-}

module Snap.Extension.Session ( MonadSession(..) ) where

import Snap.Types

class MonadSnap m => MonadSession m where
    type SessionValue m
    getSession   :: m (SessionValue m)
    putSession   :: SessionValue m -> m ()
    touchSession :: m ()