Agda-2.5.4: A dependently typed functional programming language and proof assistant

Safe HaskellNone
LanguageHaskell2010

Agda.TypeChecking.Monad.Debug

Synopsis

Documentation

class (Functor m, Applicative m, Monad m) => MonadDebug m where #

Minimal complete definition

formatDebugMessage

Methods

displayDebugMessage :: Int -> String -> m () #

traceDebugMessage :: Int -> String -> m a -> m a #

formatDebugMessage :: VerboseKey -> Int -> TCM Doc -> m String #

Instances
MonadDebug ReduceM # 
Instance details

Defined in Agda.TypeChecking.Reduce.Monad

MonadDebug TerM # 
Instance details

Defined in Agda.Termination.Monad

MonadDebug m => MonadDebug (MaybeT m) # 
Instance details

Defined in Agda.TypeChecking.Monad.Debug

MonadDebug m => MonadDebug (ListT m) # 
Instance details

Defined in Agda.TypeChecking.Monad.Debug

MonadIO m => MonadDebug (TCMT m) # 
Instance details

Defined in Agda.TypeChecking.Monad.Debug

MonadDebug m => MonadDebug (ExceptT e m) # 
Instance details

Defined in Agda.TypeChecking.Monad.Debug

MonadDebug m => MonadDebug (StateT s m) # 
Instance details

Defined in Agda.TypeChecking.Monad.Debug

(MonadDebug m, Monoid w) => MonadDebug (WriterT w m) # 
Instance details

Defined in Agda.TypeChecking.Monad.Debug

MonadDebug m => MonadDebug (ReaderT r m) # 
Instance details

Defined in Agda.TypeChecking.Monad.Debug

reportS :: (HasOptions m, MonadDebug m, MonadReader TCEnv m) => VerboseKey -> Int -> String -> m () #

Conditionally print debug string.

reportSLn :: (HasOptions m, MonadDebug m, MonadReader TCEnv m) => VerboseKey -> Int -> String -> m () #

Conditionally println debug string.

reportSDoc :: (HasOptions m, MonadDebug m, MonadReader TCEnv m) => VerboseKey -> Int -> TCM Doc -> m () #

Conditionally render debug Doc and print it.

unlessDebugPrinting :: MonadTCM m => m () -> m () #

traceSLn :: (HasOptions m, MonadDebug m) => VerboseKey -> Int -> String -> m a -> m a #

traceSDoc :: (HasOptions m, MonadDebug m) => VerboseKey -> Int -> TCM Doc -> m a -> m a #

Conditionally render debug Doc, print it, and then continue.

verboseBracket :: (HasOptions m, MonadDebug m, MonadError err m) => VerboseKey -> Int -> String -> m a -> m a #

Print brackets around debug messages issued by a computation.