Safe Haskell | None |
---|---|
Language | GHC2021 |
Polysemy.Log.Log
Description
Synopsis
- interpretLogLogMetadata :: forall (r :: EffectRow). Members '[LogMetadata LogMessage, GhcTime] r => InterpreterFor Log r
- interpretLogMetadataDataLog :: forall a (r :: EffectRow). Members '[DataLog (LogEntry a), GhcTime] r => InterpreterFor (LogMetadata a) r
- interpretLogMetadataDataLog' :: forall a (r :: EffectRow). Members '[DataLog (LogEntry a), Embed IO] r => InterpretersFor '[LogMetadata a, GhcTime] r
- interpretLogDataLog :: forall (r :: EffectRow). Members '[DataLog (LogEntry LogMessage), GhcTime] r => InterpreterFor Log r
- interpretLogDataLog' :: forall (r :: EffectRow). Members '[DataLog (LogEntry LogMessage), Embed IO] r => InterpretersFor '[Log, LogMetadata LogMessage, GhcTime] r
- interpretLogDataLogConc :: forall (r :: EffectRow). Members '[DataLog (LogEntry LogMessage), Resource, Async, Race, Embed IO] r => Int -> InterpreterFor Log r
- interpretDataLogLocal :: forall a (r :: EffectRow). (a -> a) -> (a -> Sem r ()) -> InterpreterFor (DataLog a) r
- interpretDataLog :: forall a (r :: EffectRow). (a -> Sem r ()) -> InterpreterFor (DataLog a) r
Documentation
interpretLogLogMetadata :: forall (r :: EffectRow). Members '[LogMetadata LogMessage, GhcTime] r => InterpreterFor Log r Source #
Interpret Log
into the intermediate internal effect LogMetadata
.
interpretLogMetadataDataLog :: forall a (r :: EffectRow). Members '[DataLog (LogEntry a), GhcTime] r => InterpreterFor (LogMetadata a) r Source #
Interpret the intermediate internal effect LogMetadata
into DataLog
.
Since this adds a timestamp, it has a dependency on GhcTime
.
Use interpretLogMetadataDataLog'
for a variant that interprets GhcTime
in-place.
interpretLogMetadataDataLog' :: forall a (r :: EffectRow). Members '[DataLog (LogEntry a), Embed IO] r => InterpretersFor '[LogMetadata a, GhcTime] r Source #
Interpret the intermediate internal effect LogMetadata
into DataLog
.
interpretLogDataLog :: forall (r :: EffectRow). Members '[DataLog (LogEntry LogMessage), GhcTime] r => InterpreterFor Log r Source #
interpretLogDataLog' :: forall (r :: EffectRow). Members '[DataLog (LogEntry LogMessage), Embed IO] r => InterpretersFor '[Log, LogMetadata LogMessage, GhcTime] r Source #
interpretLogDataLogConc :: forall (r :: EffectRow). Members '[DataLog (LogEntry LogMessage), Resource, Async, Race, Embed IO] r => Int -> InterpreterFor Log r Source #
interpretDataLogLocal :: forall a (r :: EffectRow). (a -> a) -> (a -> Sem r ()) -> InterpreterFor (DataLog a) r Source #
Helper for maintaining a context function as state that is applied to each logged message, allowing the context of a block to be modified.
interpretDataLog :: forall a (r :: EffectRow). (a -> Sem r ()) -> InterpreterFor (DataLog a) r Source #