Safe Haskell | None |
---|---|
Language | Haskell2010 |
System.Wlog.HasLoggerName
Contents
Description
This module contains type class for HasLoggerName
.
- class HasLoggerName m where
- setLoggerName :: HasLoggerName m => LoggerName -> m a -> m a
- withSublogger :: HasLoggerName m => LoggerName -> m a -> m a
Remove boilerplater
class HasLoggerName m where #
This type class exists to remove boilerplate logging by adding the logger's name to the context in each module.
TODO: replace current methods with Lens?
Methods
askLoggerName :: m LoggerName #
Extract logger name from context
modifyLoggerName :: (LoggerName -> LoggerName) -> m a -> m a #
Change logger name in context
askLoggerName :: (MonadTrans t, t n ~ m, Monad n, HasLoggerName n) => m LoggerName #
Extract logger name from context
modifyLoggerName :: (MFunctor t, t n ~ m, Monad n, HasLoggerName n) => (LoggerName -> LoggerName) -> m a -> m a #
Change logger name in context
Instances
HasLoggerName Identity # | |
Monad m => HasLoggerName (LoggerNameBox m) # | |
Monad m => HasLoggerName (NamedPureLogger m) # | |
(HasLoggerName m, Monad m) => HasLoggerName (PureLogger m) # | |
(Monoid w, Monad m, HasLoggerName m) => HasLoggerName (WriterT w m) # | |
(Monad m, HasLoggerName m) => HasLoggerName (StateT a m) # | |
(Monad m, HasLoggerName m) => HasLoggerName (StateT a m) # | |
(Monad m, HasLoggerName m) => HasLoggerName (ExceptT e m) # | |
(Monad m, HasLoggerName m) => HasLoggerName (ReaderT * a m) # | |
(Monad m, HasLoggerName m) => HasLoggerName (ContT * r m) # | |
(Monad m, HasLoggerName m, Monoid w) => HasLoggerName (RWST r w s m) # | |
(Monad m, HasLoggerName m, Monoid w) => HasLoggerName (RWST r w s m) # | |
setLoggerName :: HasLoggerName m => LoggerName -> m a -> m a #
Set logger name in context.
withSublogger :: HasLoggerName m => LoggerName -> m a -> m a #
Change logger name to the given one