co-log-0.6.1.0: Composable Contravariant Comonadic Logging Library
Copyright(c) 2018-2022 Kowainik 2023-2024 Co-Log
LicenseMPL-2.0
Safe HaskellSafe-Inferred
LanguageHaskell2010

Colog.Pure

Description

Pure implementation of logging action.

Synopsis

Documentation

newtype PureLoggerT msg m a Source #

Pure monad transformer for logging. Can log any msg messages. Allows to log messages by storing them in the internal state.

Constructors

PureLoggerT 

Fields

Instances

Instances details
MonadTrans (PureLoggerT msg) Source # 
Instance details

Defined in Colog.Pure

Methods

lift :: Monad m => m a -> PureLoggerT msg m a #

Monad m => MonadState (Seq msg) (PureLoggerT msg m) Source # 
Instance details

Defined in Colog.Pure

Methods

get :: PureLoggerT msg m (Seq msg) #

put :: Seq msg -> PureLoggerT msg m () #

state :: (Seq msg -> (a, Seq msg)) -> PureLoggerT msg m a #

MonadFail m => MonadFail (PureLoggerT msg m) Source # 
Instance details

Defined in Colog.Pure

Methods

fail :: String -> PureLoggerT msg m a #

MonadIO m => MonadIO (PureLoggerT msg m) Source # 
Instance details

Defined in Colog.Pure

Methods

liftIO :: IO a -> PureLoggerT msg m a #

Monad m => Applicative (PureLoggerT msg m) Source # 
Instance details

Defined in Colog.Pure

Methods

pure :: a -> PureLoggerT msg m a #

(<*>) :: PureLoggerT msg m (a -> b) -> PureLoggerT msg m a -> PureLoggerT msg m b #

liftA2 :: (a -> b -> c) -> PureLoggerT msg m a -> PureLoggerT msg m b -> PureLoggerT msg m c #

(*>) :: PureLoggerT msg m a -> PureLoggerT msg m b -> PureLoggerT msg m b #

(<*) :: PureLoggerT msg m a -> PureLoggerT msg m b -> PureLoggerT msg m a #

Functor m => Functor (PureLoggerT msg m) Source # 
Instance details

Defined in Colog.Pure

Methods

fmap :: (a -> b) -> PureLoggerT msg m a -> PureLoggerT msg m b #

(<$) :: a -> PureLoggerT msg m b -> PureLoggerT msg m a #

Monad m => Monad (PureLoggerT msg m) Source # 
Instance details

Defined in Colog.Pure

Methods

(>>=) :: PureLoggerT msg m a -> (a -> PureLoggerT msg m b) -> PureLoggerT msg m b #

(>>) :: PureLoggerT msg m a -> PureLoggerT msg m b -> PureLoggerT msg m b #

return :: a -> PureLoggerT msg m a #

MonadThrow m => MonadThrow (PureLoggerT msg m) Source # 
Instance details

Defined in Colog.Pure

Methods

throwM :: (HasCallStack, Exception e) => e -> PureLoggerT msg m a #

runPureLogT :: Functor m => PureLoggerT msg m a -> m (a, [msg]) Source #

Returns result value of PureLoggerT and list of logged messages.

runPureLog :: PureLogger msg a -> (a, [msg]) Source #

Returns result value of PureLogger and list of logged messages.

logMessagePure :: Monad m => LogAction (PureLoggerT msg m) msg Source #

LogAction that prints msg by appending it to the end of the sequence.