From f2120bec614bef89c3b4d19693e155fc7b40cfcf Mon Sep 17 00:00:00 2001 From: Orion Kindel Date: Thu, 2 Nov 2023 13:17:53 -0500 Subject: [PATCH] fix: add MonadRec instance --- src/Control.Monad.State.Async.purs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Control.Monad.State.Async.purs b/src/Control.Monad.State.Async.purs index a2d1cdf..fb70cf9 100644 --- a/src/Control.Monad.State.Async.purs +++ b/src/Control.Monad.State.Async.purs @@ -7,6 +7,7 @@ import Control.Alternative (class Alternative, class Plus) import Control.Monad.Error.Class (class MonadError, class MonadThrow, liftEither, try) import Control.Monad.Fork.Class (class MonadBracket, class MonadFork, class MonadKill, bracket, kill, never, uninterruptible) import Control.Monad.Reader (class MonadAsk, ReaderT(..), ask) +import Control.Monad.Rec.Class (class MonadRec) import Control.Monad.Trans.Class (class MonadTrans, lift) import Control.Parallel (class Parallel, parallel, sequential) import Data.Async.Class (class AsyncState) @@ -85,6 +86,7 @@ derive newtype instance (MonadAff m) => MonadAff (AsyncStateT w s m) derive newtype instance (MonadThrow e m) => MonadThrow e (AsyncStateT w s m) derive newtype instance (MonadError e m) => MonadError e (AsyncStateT w s m) derive newtype instance (MonadFork f m) => MonadFork f (AsyncStateT w s m) +derive newtype instance (MonadRec m) => MonadRec (AsyncStateT w s m) instance (Parallel f m) => Parallel (AsyncStateT w s f) (AsyncStateT w s m) where parallel a = wrap $ parallel $ unwrap a sequential a = wrap $ sequential $ unwrap a