Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
A concrete monad transformer
where TraceT
t e mt
is the type of
tags/breadcrumbs, e
is the type of errors, and m
is the underlying monad.
MonadBase b m => MonadBase b (TraceT t e m) | |
MonadBaseControl b m => MonadBaseControl b (TraceT t e m) | |
Monad m => MonadError e (TraceT t e m) | |
Monad m => MonadTrace t (TraceT t e m) | |
MonadTrans (TraceT t e) | |
MonadTransControl (TraceT t e) | |
(Monad m, Monoid e) => Alternative (TraceT t e m) | |
Monad m => Monad (TraceT t e m) | |
Monad m => Functor (TraceT t e m) | |
Monad m => Applicative (TraceT t e m) | |
MonadIO m => MonadIO (TraceT t e m) | |
type StT (TraceT t e) α = StT (ReaderT (Seq t)) (StT (EitherT (ErrorTrace t e)) α) | |
type StM (TraceT t e m) α = ComposeSt (TraceT t e) m α |
runTraceT :: (Functor m, Monad m) => TraceT t e m α -> m (Either (ErrorTrace t e) α) Source
Run a traced traced computation to get either its result, or an error and
its provenience (ErrorTrace
).