@@ -11,6 +11,7 @@ module Reflex.Profiled where
1111
1212import Control.Lens hiding (children)
1313import Control.Monad
14+import Control.Monad.Exception
1415import Control.Monad.Fix
1516import Control.Monad.Primitive
1617import Control.Monad.Reader
@@ -95,7 +96,8 @@ writeProfilingData :: FilePath -> IO ()
9596writeProfilingData p = do
9697 writeFile p =<< formatCostCentreTree =<< getCostCentreTree
9798
98−newtype ProfiledM m a = ProfiledM { runProfiledM :: m a } deriving (Functor, Applicative, Monad, MonadFix)
99+newtype ProfiledM m a = ProfiledM { runProfiledM :: m a }
100+ deriving (Functor, Applicative, Monad, MonadFix, MonadException, MonadAsyncException)
99101
100102profileEvent :: Reflex t => Event t a -> Event t a
101103profileEvent e = unsafePerformIO $ do