Portability | unportable |
---|---|
Stability | unstable |
Maintainer | Martin Avanzini <martin.avanzini@uibk.ac.at> |
Safe Haskell | None |
This module provides an implementation of SolverM
that
performs logging of processor calls.
Documentation
data LoggingMsg
LoggingMsg Message Int (Integer, ZonedTime) ThreadId (InstanceOf SomeProcessor) Problem |
PrettyPrintable LoggingMsg | |
Monad m => MonadReader (Chan (Maybe LoggingMsg), UTCTime) (LoggingSolverM m) |
newtype LoggingSolverM m r
MonadTrans LoggingSolverM | |
Monad m => MonadState Int (LoggingSolverM m) | |
Monad m => Monad (LoggingSolverM m) | |
MonadIO m => MonadIO (LoggingSolverM m) | |
SolverM m => SolverM (LoggingSolverM m) | |
Monad m => MonadReader (Chan (Maybe LoggingMsg), UTCTime) (LoggingSolverM m) |
data LSolverState st
initialState :: Handle -> st -> IO (LSolverState st)
runLS :: Monad m => LoggingSolverM m r -> Chan (Maybe LoggingMsg) -> UTCTime -> Int -> m r