Safe Haskell | None |
---|---|
Language | Haskell2010 |
- class MonadTiming m where
- type TimingTree = Tree (Tag, NominalDiffTime)
- type Tag = String
- newtype TimingT m a = TimingT {
- runTimingT :: m (a, [TimingTree])
- execTimingT :: MonadIO m => TimingT m b -> m [TimingTree]
- timingAll :: MonadIO m => TimingT m a -> m (a, TimingTree)
- newtype NoTimingT m a = NoTimingT {
- runNoTimingT :: m a
Introduction
This package provides an mtl-like interface for timing subcomponents of an arbitrary computation.
MonadTiming
class MonadTiming m where Source #
Monads that support timing subcomputations.
MonadTiming (NoTimingT m) Source # | |
MonadIO m => MonadTiming (TimingT m) Source # | |
type TimingTree = Tree (Tag, NominalDiffTime) Source #
A tree of timing events.
TimingT
, general timing handler
A monad transformer that records timing events.
TimingT | |
|
MonadTrans TimingT Source # | |
MonadRWS r w s m => MonadRWS r w s (TimingT m) Source # | |
MonadBase b m => MonadBase b (TimingT m) Source # | |
MonadBaseControl b m => MonadBaseControl b (TimingT m) Source # | |
MonadError e m => MonadError e (TimingT m) Source # | |
MonadReader r m => MonadReader r (TimingT m) Source # | |
MonadState s m => MonadState s (TimingT m) Source # | |
MonadWriter w m => MonadWriter w (TimingT m) Source # | |
Monad m => Monad (TimingT m) Source # | |
Functor m => Functor (TimingT m) Source # | |
MonadFix m => MonadFix (TimingT m) Source # | |
Applicative m => Applicative (TimingT m) Source # | |
MonadIO m => MonadIO (TimingT m) Source # | |
Alternative m => Alternative (TimingT m) Source # | |
MonadPlus m => MonadPlus (TimingT m) Source # | |
MonadThrow m => MonadThrow (TimingT m) Source # | |
MonadCatch m => MonadCatch (TimingT m) Source # | |
MonadMask m => MonadMask (TimingT m) Source # | |
MonadCont m => MonadCont (TimingT m) Source # | |
MonadIO m => MonadTiming (TimingT m) Source # | |
type StM (TimingT m) a Source # | |
execTimingT :: MonadIO m => TimingT m b -> m [TimingTree] Source #
Run a TimingT
computation, discarding the result.
timingAll :: MonadIO m => TimingT m a -> m (a, TimingTree) Source #
Wrap an entire TimingT
computation in a timing event.
NoTimingT
, a no-timing handler
newtype NoTimingT m a Source #
Run a computation without recording any timing data.
NoTimingT | |
|