module Simulation.Aivika.IO.Exception () where
import Control.Exception
import Simulation.Aivika.Trans.Exception
instance MonadException IO where
{-# INLINE catchComp #-}
catchComp :: forall e a. Exception e => IO a -> (e -> IO a) -> IO a
catchComp = forall e a. Exception e => IO a -> (e -> IO a) -> IO a
catch
{-# INLINE finallyComp #-}
finallyComp :: forall a b. IO a -> IO b -> IO a
finallyComp = forall a b. IO a -> IO b -> IO a
finally
{-# INLINE throwComp #-}
throwComp :: forall e a. Exception e => e -> IO a
throwComp = forall a e. Exception e => e -> a
throw