Skip to content
This repository was archived by the owner on Jun 15, 2023. It is now read-only.

Commit ad440bc

Browse files
authored
Merge pull request #1 from garyb/trans'
Use MonadTrans
2 parents f494d08 + e95a35e commit ad440bc

File tree

1 file changed

+9
-11
lines changed

1 file changed

+9
-11
lines changed

src/ECharts/Monad.purs

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,23 +4,24 @@ import Prelude
44

55
import Control.Alt (class Alt)
66
import Control.Alternative (class Alternative)
7-
import Control.MonadPlus (class MonadPlus)
8-
import Control.MonadZero (class MonadZero)
7+
import Control.Monad.Aff.Class (class MonadAff)
98
import Control.Monad.Cont.Class (class MonadCont)
9+
import Control.Monad.Eff (kind Effect)
1010
import Control.Monad.Eff.Class (class MonadEff)
11-
import Control.Monad.Aff.Class (class MonadAff)
1211
import Control.Monad.Error.Class (class MonadError, class MonadThrow)
1312
import Control.Monad.Reader.Class (class MonadAsk, class MonadReader)
14-
import Control.Monad.State.Class (class MonadState)
15-
import Control.Monad.Eff (kind Effect)
1613
import Control.Monad.Rec.Class (class MonadRec)
17-
import Control.Monad.Writer.Trans (WriterT(..), execWriterT)
14+
import Control.Monad.State.Class (class MonadState)
15+
import Control.Monad.Trans.Class (class MonadTrans, lift)
1816
import Control.Monad.Writer.Class (class MonadTell, class MonadWriter, tell)
17+
import Control.Monad.Writer.Trans (WriterT, execWriterT)
18+
import Control.MonadPlus (class MonadPlus)
19+
import Control.MonadZero (class MonadZero)
1920
import Control.Plus (class Plus, empty)
2021
import Data.Array as Arr
2122
import Data.Foldable as F
22-
import Data.Identity (Identity)
2323
import Data.Foreign (Foreign, toForeign)
24+
import Data.Identity (Identity)
2425
import Data.Maybe (Maybe(..), maybe)
2526
import Data.Newtype (class Newtype, unwrap)
2627
import Data.Tuple (Tuple(..), uncurry, snd, lookup)
@@ -80,10 +81,7 @@ derive newtype instance monadReaderCommandsT
8081
derive newtype instance monadStateCommandsT
8182
MonadState s m MonadState s (CommandsT i m)
8283

83-
lift m i a. Monad m m a CommandsT i m a
84-
lift a = CommandsT $ WriterT do
85-
x ← a
86-
pure $ Tuple x []
84+
derive newtype instance monadTransCommandsTMonadTrans (CommandsT i)
8785

8886
set m. MonadTell Pairs m String Foreign m Unit
8987
set k v = tell $ Arr.singleton $ Tuple k v

0 commit comments

Comments
 (0)