Safe Haskell | None |
---|---|
Language | Haskell2010 |
Control.Monad.Stack.Writer
Documentation
class Monad m => WriterStack (m :: Type -> Type) where Source #
Methods
liftWriter :: PopWriter m a -> m a Source #
Instances
type WriterDepth (n :: Nat) (m :: Type -> Type) = IteratePop n WriterT m Source #
type WriterConstraints (n :: Nat) (m :: Type -> Type) = (KnownNat n, StackConstraints n WriterT WriterStack m) Source #
type MonadWriterDepth (n :: Nat) (m :: Type -> Type) w = (WriterConstraints n m, MonadWriter w (WriterDepth n m)) Source #
depthWriter :: forall (n :: Nat) m a. WriterConstraints n m => WriterDepth n m a -> m a Source #