Copyright | (c) 2018-2020 Kowainik 2021-2024 Co-Log |
---|---|
License | MPL-2.0 |
Maintainer | Co-Log <xrom.xkov@gmail.com> |
Stability | Stable |
Portability | Portable |
Safe Haskell | None |
Language | Haskell2010 |
Exports all core functionality. co-log-core
is a lightweight package that
defines only core data type and various combinators to work with it.
Fundamentals of co-log-core
are based on the following data type:
newtype LogAction m msg = LogAction { unLogAction :: msg -> m () }
This data type provides extremely composable and flexible interface by having many instances of the standard algebraic data types.
The package has the following structure:
- Colog.Core.Action: definition of the main data type and its combinators.
- Colog.Core.Class:
HasLog
typeclass that describes how different values (e.g. application environment) can store and modifyLogAction
. - Colog.Core.IO: basic loggers that work with
MonadIO
andString
. - Colog.Core.Severity: logger severity.
Documentation
module Colog.Core.Action
module Colog.Core.Class
module Colog.Core.IO
module Colog.Core.Severity