Skip to content

Commit aecca5b

Browse files
Merge pull request #19 from purescript-contrib/aff-instance
Add instance for MonadAff
2 parents c85451a + eb662da commit aecca5b

File tree

2 files changed

+6
-1
lines changed

2 files changed

+6
-1
lines changed

bower.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@
2121
"purescript-exists": "^4.0.0",
2222
"purescript-prelude": "^4.0.0",
2323
"purescript-tailrec": "^4.0.0",
24-
"purescript-transformers": "^4.0.0"
24+
"purescript-transformers": "^4.0.0",
25+
"purescript-aff": "^5.1.1"
2526
},
2627
"devDependencies": {
2728
"purescript-console": "^4.0.0"

src/Control/Monad/Free/Trans.purs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import Control.Monad.Writer.Class (class MonadTell, tell)
2424
import Data.Bifunctor (bimap)
2525
import Data.Either (Either(..))
2626
import Data.Exists (Exists, mkExists, runExists)
27+
import Effect.Aff.Class (class MonadAff, liftAff)
2728
import Effect.Class (class MonadEffect, liftEffect)
2829

2930
-- | Instead of implementing `bind` directly, we capture the bind using this data structure, to
@@ -91,6 +92,9 @@ instance monoidFreeT :: (Functor f, Monad m, Monoid w) => Monoid (FreeT f m w) w
9192
instance monadEffectFreeT :: (Functor f, MonadEffect m) => MonadEffect (FreeT f m) where
9293
liftEffect = lift <<< liftEffect
9394

95+
instance monadAffFreeT :: (Functor f, MonadAff m) => MonadAff (FreeT f m) where
96+
liftAff = lift <<< liftAff
97+
9498
instance monadAskFreeT :: (Functor f, MonadAsk r m) => MonadAsk r (FreeT f m) where
9599
ask = lift ask
96100

0 commit comments

Comments
 (0)