on develop help sign in
Moves Deletable across from reflex-dom.
commit35ed60c2922fb4c75f0ebf3e19fd198dbcc188f7 authorDave Laing <dave.laing.80@gmail.com> dateSun 14 Aug 2016, 14:08 (10 years ago) parenta0a7bab
2 files changed+19
reflex.cabal+2 src/Reflex/Deletable/Class.hs+17
reflex.cabal+2
@@ -25,6 +25,7 @@ library
2525 exception-transformers == 0.4.*,
2626 haskell-src-exts >= 1.16 && < 1.18,
2727 haskell-src-meta == 0.6.*,
28+ monad-control >= 1.0.1 && < 1.1,
2829 mtl >= 2.1 && < 2.3,
2930 primitive >= 0.5 && < 0.7,
3031 ref-tf == 0.4.*,
@@ -42,6 +43,7 @@ library
4243 Data.WeakBag,
4344 Reflex,
4445 Reflex.Class,
46+ Reflex.Deletable.Class,
4547 Reflex.Dynamic,
4648 Reflex.Dynamic.TH,
4749 Reflex.Dynamic.Uniq,
src/Reflex/Deletable/Class.hsnew file+17
@@ -0,0 +1,17 @@
1+{-# LANGUAGE FlexibleInstances #-}
2+{-# LANGUAGE FunctionalDependencies #-}
3+{-# LANGUAGE MultiParamTypeClasses #-}
4+{-# LANGUAGE UndecidableInstances #-}
5+module Reflex.Deletable.Class where
6+
7+import Reflex
8+
9+import Control.Monad.Reader
10+import Control.Monad.Trans.Control
11+
12+class (Reflex t, Monad m) => Deletable t m | m -> t where
13+ deletable :: Event t () -> m a -> m a
14+
15+instance Deletable t m => Deletable t (ReaderT r m) where
16+ {-# INLINABLE deletable #-}
17+ deletable = liftThrough . deletable