test-monad-laws-0.0.0.0: Laws for mtl classes as QuickCheck properties.

Safe HaskellNone
LanguageHaskell2010

Test.Monad.Writer

Synopsis

Documentation

tell_tell :: forall m w. MonadWriter w m => w -> w -> Equation (m ()) Source #

tell_mempty :: forall m w. MonadWriter w m => Equation (m ()) Source #

listen_return :: forall m a w. MonadWriter w m => a -> Equation (m (a, w)) Source #

listen_bind :: forall m a b w. MonadWriter w m => m a -> (a -> m b) -> Equation (m (b, w)) Source #

listen_tell :: forall m w. MonadWriter w m => w -> Equation (m w) Source #

listen_listen :: forall m a w. MonadWriter w m => m a -> Equation (m ((a, w), w)) Source #

listen_pass :: forall m a w. MonadWriter w m => m (a, w -> w) -> Equation (m (a, w)) Source #

pass_tell :: forall m w. MonadWriter w m => w -> (w -> w) -> Equation (m ()) Source #

writer' :: forall m a w. MonadWriter w m => Writer w a -> m a Source #

This is equivalent to writer, which should be a monad homomorphism.