File tree Expand file tree Collapse file tree 1 file changed +4
-0
lines changed
Expand file tree Collapse file tree 1 file changed +4
-0
lines changed Original file line number Diff line number Diff line change @@ -10,6 +10,7 @@ import Prelude
1010
1111import Control.Alt (class Alt , (<|>))
1212import Control.Alternative (class Alternative )
13+ import Control.Lazy (class Lazy )
1314import Control.Monad.Eff.Class (class MonadEff , liftEff )
1415import Control.Monad.Error.Class (class MonadError , throwError , catchError )
1516import Control.Monad.Reader.Class (class MonadAsk , class MonadReader )
@@ -81,6 +82,9 @@ instance monadRWST :: (Monad m, Monoid w) => Monad (RWST r w s m)
8182instance monadTransRWST :: Monoid w => MonadTrans (RWST r w s ) where
8283 lift m = RWST \_ s -> m >>= \a -> pure $ RWSResult s a mempty
8384
85+ instance lazyRWST :: Lazy (RWST r w s m a ) where
86+ defer f = RWST \r s -> case f unit of RWST f' -> f' r s
87+
8488instance monadEffRWS :: (Monoid w , MonadEff eff m ) => MonadEff eff (RWST r w s m ) where
8589 liftEff = lift <<< liftEff
8690
You can’t perform that action at this time.
0 commit comments