module Control.Monad.Tell.Lens (scribe) where
import Control.Lens.Setter (ASetter, set)
import Control.Monad.Tell.Class (MonadTell, tell)
{-# INLINE scribe #-}
scribe :: (MonadTell t m, Monoid s) => ASetter s t a b -> b -> m ()
scribe :: ASetter s t a b -> b -> m ()
scribe ASetter s t a b
l b
b = t -> m ()
forall w (m :: * -> *). MonadTell w m => w -> m ()
tell (ASetter s t a b -> b -> s -> t
forall s t a b. ASetter s t a b -> b -> s -> t
set ASetter s t a b
l b
b s
forall a. Monoid a => a
mempty)