writer-cps-lens- Lens instances for the stricter CPS WriterT and RWST

Safe HaskellNone





Orphan instances

Monad z => Zoom (RWST r w s z) (RWST r w t z) s t Source # 


zoom :: LensLike' (Zoomed (RWST r w s z) c) t s -> RWST r w s z c -> RWST r w t z c #

Monad m => Magnify (RWST b w s m) (RWST a w s m) b a Source # 


magnify :: LensLike' (Magnified (RWST b w s m) c) a b -> RWST b w s m c -> RWST a w s m c #

(Monoid w, Functor m) => Wrapped (RWST r w s m a) Source # 

Associated Types

type Unwrapped (RWST r w s m a) :: * #


_Wrapped' :: Iso' (RWST r w s m a) (Unwrapped (RWST r w s m a)) #

(Monoid w, Functor m, (~) * t (RWST r' w' s' m' a')) => Rewrapped (RWST r w s m a) t Source #

Unlike normal Wrapped instances, this doesn't simply peel off the newtype wrapper, as that will expose the hidden CPS w state. Based on code from Control.Lens.Wrapped