Copyright | 2021 Dominik Schrempf |
---|---|
License | GPL-3.0-or-later |
Maintainer | dominik.schrempf@gmail.com |
Stability | unstable |
Portability | portable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Creation date: Fri Sep 6 14:43:19 2019.
Synopsis
- data Verbosity
- class HasLock e where
- class HasLogHandles e where
- getLogHandles :: e -> [Handle]
- class HasStartingTime s where
- getStartingTime :: s -> UTCTime
- class HasVerbosity s where
- getVerbosity :: s -> Verbosity
- type Logger e a = ReaderT e IO a
- logOutB :: (HasLogHandles e, HasLock e) => ByteString -> ByteString -> Logger e ()
- logDebugB :: (HasLock e, HasLogHandles e, HasVerbosity e) => ByteString -> Logger e ()
- logDebugS :: (HasLock e, HasLogHandles e, HasVerbosity e) => String -> Logger e ()
- logWarnB :: (HasLock e, HasLogHandles e, HasVerbosity e) => ByteString -> Logger e ()
- logWarnS :: (HasLock e, HasLogHandles e, HasVerbosity e) => String -> Logger e ()
- logInfoB :: (HasLock e, HasLogHandles e, HasVerbosity e) => ByteString -> Logger e ()
- logInfoS :: (HasLock e, HasLogHandles e, HasVerbosity e) => String -> Logger e ()
- logHeader :: [String]
- logInfoHeader :: (HasLock e, HasLogHandles e, HasStartingTime e, HasVerbosity e) => String -> [String] -> Logger e ()
- logInfoFooter :: (HasLock e, HasLogHandles e, HasStartingTime e, HasVerbosity e) => Logger e ()
- logInfoNewSection :: (HasLock e, HasLogHandles e, HasVerbosity e) => String -> Logger e ()
Documentation
Verbosity levels.
Instances
class HasLock e where Source #
Types with an output lock for concurrent output.
Instances
HasLock (Environment a) Source # | |
Defined in ELynx.Tools.Environment getLock :: Environment a -> MVar () Source # |
class HasLogHandles e where Source #
Types with logging information.
getLogHandles :: e -> [Handle] Source #
Instances
HasLogHandles (Environment a) Source # | |
Defined in ELynx.Tools.Environment getLogHandles :: Environment a -> [Handle] Source # |
class HasStartingTime s where Source #
Types with starting time.
getStartingTime :: s -> UTCTime Source #
Instances
HasStartingTime (Environment a) Source # | |
Defined in ELynx.Tools.Environment getStartingTime :: Environment a -> UTCTime Source # |
class HasVerbosity s where Source #
Types with verbosity.
getVerbosity :: s -> Verbosity Source #
Instances
HasVerbosity (Environment a) Source # | |
Defined in ELynx.Tools.Environment getVerbosity :: Environment a -> Verbosity Source # |
type Logger e a = ReaderT e IO a Source #
Reader transformer used for logging to a file and to standard output.
:: (HasLogHandles e, HasLock e) | |
=> ByteString | Prefix. |
-> ByteString | Message. |
-> Logger e () |
Write to standard output and maybe to log file.
logDebugB :: (HasLock e, HasLogHandles e, HasVerbosity e) => ByteString -> Logger e () Source #
Log debug message.
logDebugS :: (HasLock e, HasLogHandles e, HasVerbosity e) => String -> Logger e () Source #
Log debug message.
logWarnB :: (HasLock e, HasLogHandles e, HasVerbosity e) => ByteString -> Logger e () Source #
Log warning message.
logWarnS :: (HasLock e, HasLogHandles e, HasVerbosity e) => String -> Logger e () Source #
Log warning message.
logInfoB :: (HasLock e, HasLogHandles e, HasVerbosity e) => ByteString -> Logger e () Source #
Log info message.
logInfoS :: (HasLock e, HasLogHandles e, HasVerbosity e) => String -> Logger e () Source #
Log info message.
logHeader :: [String] Source #
A short header to be used in executables. unlines
doesn't work here
because it adds an additional newline at the end.
logInfoHeader :: (HasLock e, HasLogHandles e, HasStartingTime e, HasVerbosity e) => String -> [String] -> Logger e () Source #
Log header.
logInfoFooter :: (HasLock e, HasLogHandles e, HasStartingTime e, HasVerbosity e) => Logger e () Source #
Log footer.
logInfoNewSection :: (HasLock e, HasLogHandles e, HasVerbosity e) => String -> Logger e () Source #
Unified way of creating a new section in the log.