co-log-0.4.0.1: Composable Contravariant Comonadic Logging Library
Copyright(c) 2018-2020 Kowainik
LicenseMPL-2.0
MaintainerKowainik <xrom.xkov@gmail.com>
Safe HaskellNone
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 #

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 #

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 => 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 #

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.