| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Control.Carrier.Logger.IO
Contents
Description
Synopsis
- newtype LoggerIOC f (m :: Type -> Type) a = LoggerIOC (ReaderC f m a)
- type HandleSelector = Loc -> LogSource -> LogLevel -> LogStr -> Handle
- singleHandle :: Handle -> HandleSelector
- runLoggerIO :: HandleSelector -> LoggerIOC HandleSelector m a -> m a
- runStdoutLoggerIO :: LoggerIOC HandleSelector m a -> m a
- runStderrLoggerIO :: LoggerIOC HandleSelector m a -> m a
Documentation
newtype LoggerIOC f (m :: Type -> Type) a Source #
Algebra for a simple IO logger. The inner function allows for selecting a
Handle according to something like LogLevel.
Instances
| MonadIO m => MonadIO (LoggerIOC f m) Source # | |
Defined in Control.Carrier.Logger.IO | |
| Applicative m => Applicative (LoggerIOC f m) Source # | |
Defined in Control.Carrier.Logger.IO Methods pure :: a -> LoggerIOC f m a # (<*>) :: LoggerIOC f m (a -> b) -> LoggerIOC f m a -> LoggerIOC f m b # liftA2 :: (a -> b -> c) -> LoggerIOC f m a -> LoggerIOC f m b -> LoggerIOC f m c # (*>) :: LoggerIOC f m a -> LoggerIOC f m b -> LoggerIOC f m b # (<*) :: LoggerIOC f m a -> LoggerIOC f m b -> LoggerIOC f m a # | |
| Functor m => Functor (LoggerIOC f m) Source # | |
| Monad m => Monad (LoggerIOC f m) Source # | |
| (Algebra sig m, MonadIO m) => Algebra (Logger :+: sig) (LoggerIOC HandleSelector m) Source # | |
Defined in Control.Carrier.Logger.IO | |
Helpers
singleHandle :: Handle -> HandleSelector Source #
Helper to run IO loggers by writing to the same Handle every time.
Carrier implementation
Arguments
| :: HandleSelector | f |
| -> LoggerIOC HandleSelector m a | |
| -> m a |
Run logger, writing to a Handle selected by a function f.
runStdoutLoggerIO :: LoggerIOC HandleSelector m a -> m a Source #
Run logger, writing everything to stdout.
runStderrLoggerIO :: LoggerIOC HandleSelector m a -> m a Source #
Run logger, writing everything to stderr.