Joshua Potter 2022-04-02 10:36:41 -04:00
parent 10e8407424
commit 82d0d51810
3 changed files with 32 additions and 28 deletions

View File

@ -4,7 +4,7 @@
inputs = { inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11"; nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11";
flake-compat = { flake-compat = {
url = github:edolstra/flake-compat; url = "github:edolstra/flake-compat";
flake = false; flake = false;
}; };
flake-utils = { flake-utils = {
@ -19,8 +19,12 @@
in in
{ {
overlay = final: prev: { overlay = final: prev: {
haskellPackages = prev.haskellPackages.extend (_self: _super: { haskellPackages = prev.haskellPackages.override (old: {
"${name}" = prev.haskellPackages.callCabal2nix name self { }; overrides = prev.lib.composeExtensions
(old.overrides or (_: _: {}))
(_self: _super: {
"${name}" = final.haskellPackages.callCabal2nix name self { };
});
}); });
}; };
} // (flake-utils.lib.eachDefaultSystem (system: } // (flake-utils.lib.eachDefaultSystem (system:

View File

@ -1,7 +1,7 @@
cabal-version: 2.4 cabal-version: 2.4
name: fused-effects-exceptions name: fused-effects-exceptions
version: 1.1.0.2 version: 1.1.2.1
synopsis: Handle exceptions thrown in IO with fused-effects. synopsis: Handle exceptions thrown in IO with fused-effects.
description: Provides Resource and Catch effects capable of reacting to and catching GHC's dynamic exceptions. description: Provides Resource and Catch effects capable of reacting to and catching GHC's dynamic exceptions.
homepage: https://github.com/fused-effects/fused-effects-exceptions#readme homepage: https://github.com/fused-effects/fused-effects-exceptions#readme

View File

@ -7,7 +7,7 @@
{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeApplications #-}
-- | Operations from "Control.Exception" and "UnliftIO.Exception" lifted into effectful contexts using 'Control.Effect.Lift.Lift'. -- | Operations from "Control.Exception" and "UnliftIO.Exception" lifted into effectful contexts using 'Control.Effect.Lift.Lift'.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
module Control.Effect.Exception.UnliftIO module Control.Effect.Exception.UnliftIO
( -- * Lifted "Control.Exception" operations ( -- * Lifted "Control.Exception" operations
throwIO throwIO
@ -80,7 +80,7 @@ import Prelude hiding (ioError)
-- | See @"Unlift.Exception".throwIO@. -- | See @"Unlift.Exception".throwIO@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
throwIO throwIO
:: forall n e sig m a :: forall n e sig m a
. (MonadUnliftIO n, Exc.Exception e, Has (Lift n) sig m) . (MonadUnliftIO n, Exc.Exception e, Has (Lift n) sig m)
@ -90,7 +90,7 @@ throwIO = sendM @n . Exc.throwIO
-- | See @"Control.Exception".'Exc.ioError'@. -- | See @"Control.Exception".'Exc.ioError'@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
ioError ioError
:: forall n sig m a :: forall n sig m a
. (MonadUnliftIO n, Has (Lift n) sig m) . (MonadUnliftIO n, Has (Lift n) sig m)
@ -100,7 +100,7 @@ ioError = sendM @n . liftIO . EUnsafe.ioError
-- | See @"Control.Exception".'Exc.throwTo'@. -- | See @"Control.Exception".'Exc.throwTo'@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
throwTo throwTo
:: forall n e sig m a :: forall n e sig m a
. (MonadUnliftIO n, Exc.Exception e, Has (Lift n) sig m) . (MonadUnliftIO n, Exc.Exception e, Has (Lift n) sig m)
@ -111,7 +111,7 @@ throwTo thread = sendM @n . liftIO . EUnsafe.throwTo thread
-- | See @"UnliftIO.Exception".catch@. -- | See @"UnliftIO.Exception".catch@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
catch catch
:: forall n e sig m a :: forall n e sig m a
. (MonadUnliftIO n, Exc.Exception e, Has (Lift n) sig m) . (MonadUnliftIO n, Exc.Exception e, Has (Lift n) sig m)
@ -123,7 +123,7 @@ catch m h = liftWith @n $
-- | See @"UnliftIO.Exception".catches@. -- | See @"UnliftIO.Exception".catches@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
catches catches
:: forall n sig m a :: forall n sig m a
. (MonadUnliftIO n, Has (Lift n) sig m) . (MonadUnliftIO n, Has (Lift n) sig m)
@ -145,7 +145,7 @@ deriving instance Functor m => Functor (Handler m)
-- | See @"UnliftIO.Exception".catchJust@. -- | See @"UnliftIO.Exception".catchJust@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
catchJust catchJust
:: forall n e sig m a b :: forall n e sig m a b
. (MonadUnliftIO n, Exc.Exception e, Has (Lift n) sig m) . (MonadUnliftIO n, Exc.Exception e, Has (Lift n) sig m)
@ -158,7 +158,7 @@ catchJust p m h = liftWith @n $
-- | See @"Control.Exception".'Exc.handle'@. -- | See @"Control.Exception".'Exc.handle'@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
handle handle
:: forall n e sig m a :: forall n e sig m a
. (MonadUnliftIO n, Exc.Exception e, Has (Lift n) sig m) . (MonadUnliftIO n, Exc.Exception e, Has (Lift n) sig m)
@ -169,7 +169,7 @@ handle = flip $ catch @n
-- | See @"Control.Exception".'Exc.handleJust'@. -- | See @"Control.Exception".'Exc.handleJust'@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
handleJust handleJust
:: forall n e sig m a b :: forall n e sig m a b
. (MonadUnliftIO n, Exc.Exception e, Has (Lift n) sig m) . (MonadUnliftIO n, Exc.Exception e, Has (Lift n) sig m)
@ -181,7 +181,7 @@ handleJust p = flip (catchJust @n p)
-- | See @"Control.Exception".'Exc.try'@. -- | See @"Control.Exception".'Exc.try'@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
try try
:: forall n e sig m a b :: forall n e sig m a b
. (MonadUnliftIO n, Exc.Exception e, Has (Lift n) sig m) . (MonadUnliftIO n, Exc.Exception e, Has (Lift n) sig m)
@ -191,7 +191,7 @@ try m = catch @n (Right <$> m) (pure . Left)
-- | See @"Control.Exception".'Exc.tryJust'@. -- | See @"Control.Exception".'Exc.tryJust'@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
tryJust tryJust
:: forall n e sig m a b :: forall n e sig m a b
. (MonadUnliftIO n, Exc.Exception e, Has (Lift n) sig m) . (MonadUnliftIO n, Exc.Exception e, Has (Lift n) sig m)
@ -202,13 +202,13 @@ tryJust p m = catchJust @n p (Right <$> m) (pure . Left)
-- | See @"UnliftIO.Exception".evaluate@. -- | See @"UnliftIO.Exception".evaluate@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
evaluate :: forall n sig m a. (MonadUnliftIO n, Has (Lift n) sig m) => a -> m a evaluate :: forall n sig m a. (MonadUnliftIO n, Has (Lift n) sig m) => a -> m a
evaluate = sendM @n . Exc.evaluate evaluate = sendM @n . Exc.evaluate
-- | See @"UnliftIO.Exception".mask@. -- | See @"UnliftIO.Exception".mask@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
mask mask
:: forall n sig m a b :: forall n sig m a b
. (MonadUnliftIO n, Has (Lift n) sig m) . (MonadUnliftIO n, Has (Lift n) sig m)
@ -219,7 +219,7 @@ mask with = liftWith @n $ \ run ctx -> Exc.mask $ \ restore ->
-- | See @"Control.Exception".'Exc.mask_'@. -- | See @"Control.Exception".'Exc.mask_'@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
mask_ mask_
:: forall n sig m a :: forall n sig m a
. (MonadUnliftIO n, Has (Lift n) sig m) . (MonadUnliftIO n, Has (Lift n) sig m)
@ -229,7 +229,7 @@ mask_ m = mask @n (const m)
-- | See @"UnliftIO.Exception".uninterruptibleMask@. -- | See @"UnliftIO.Exception".uninterruptibleMask@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
uninterruptibleMask uninterruptibleMask
:: forall n sig m a b :: forall n sig m a b
. (MonadUnliftIO n, Has (Lift n) sig m) . (MonadUnliftIO n, Has (Lift n) sig m)
@ -242,7 +242,7 @@ uninterruptibleMask with = liftWith @n $
-- | See @"Control.Exception".'Exc.uninterruptibleMask_'@. -- | See @"Control.Exception".'Exc.uninterruptibleMask_'@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
uninterruptibleMask_ uninterruptibleMask_
:: forall n sig m a :: forall n sig m a
. (MonadUnliftIO n, Has (Lift n) sig m) . (MonadUnliftIO n, Has (Lift n) sig m)
@ -252,7 +252,7 @@ uninterruptibleMask_ m = uninterruptibleMask @n (const m)
-- | See @"Control.Exception".'Exc.getMaskingState'@. -- | See @"Control.Exception".'Exc.getMaskingState'@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
getMaskingState getMaskingState
:: forall n sig m :: forall n sig m
. (MonadUnliftIO n, Has (Lift n) sig m) . (MonadUnliftIO n, Has (Lift n) sig m)
@ -261,7 +261,7 @@ getMaskingState = sendM @n (liftIO EUnsafe.getMaskingState)
-- | See @"Control.Exception".'Exc.interruptible'@. -- | See @"Control.Exception".'Exc.interruptible'@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
interruptible interruptible
:: forall n sig m a :: forall n sig m a
. (MonadUnliftIO n, Has (Lift n) sig m) . (MonadUnliftIO n, Has (Lift n) sig m)
@ -272,7 +272,7 @@ interruptible m = liftWith @n $ \ run ctx -> withRunInIO $ \runInIO ->
-- | See @"Control.Exception".'Exc.allowInterrupt'@. -- | See @"Control.Exception".'Exc.allowInterrupt'@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
allowInterrupt allowInterrupt
:: forall n sig m a :: forall n sig m a
. (MonadUnliftIO n, Has (Lift n) sig m) . (MonadUnliftIO n, Has (Lift n) sig m)
@ -281,7 +281,7 @@ allowInterrupt = sendM @n (liftIO EUnsafe.allowInterrupt)
-- | See @"Control.Exception".'Exc.bracket'@. -- | See @"Control.Exception".'Exc.bracket'@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
bracket bracket
:: forall n sig m a b c :: forall n sig m a b c
. (MonadUnliftIO n, Has (Lift n) sig m) . (MonadUnliftIO n, Has (Lift n) sig m)
@ -296,7 +296,7 @@ bracket acquire release m = mask @n $ \ restore -> do
-- | See @"Control.Exception".'Exc.bracket_'@. -- | See @"Control.Exception".'Exc.bracket_'@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
bracket_ bracket_
:: forall n sig m a b c :: forall n sig m a b c
. (MonadUnliftIO n, Has (Lift n) sig m) . (MonadUnliftIO n, Has (Lift n) sig m)
@ -308,7 +308,7 @@ bracket_ before after thing = bracket @n before (const after) (const thing)
-- | See @"Control.Exception".'Exc.bracketOnError'@. -- | See @"Control.Exception".'Exc.bracketOnError'@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
bracketOnError bracketOnError
:: forall n sig m a b c :: forall n sig m a b c
. (MonadUnliftIO n, Has (Lift n) sig m) . (MonadUnliftIO n, Has (Lift n) sig m)
@ -322,7 +322,7 @@ bracketOnError acquire release m = mask @n $ \ restore -> do
-- | See @"Control.Exception".'Exc.finally'@. -- | See @"Control.Exception".'Exc.finally'@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
finally finally
:: forall n sig m a b :: forall n sig m a b
. (MonadUnliftIO n, Has (Lift n) sig m) . (MonadUnliftIO n, Has (Lift n) sig m)
@ -334,7 +334,7 @@ finally m sequel = mask @n $
-- | See @"Control.Exception".'Exc.onException'@. -- | See @"Control.Exception".'Exc.onException'@.
-- --
-- @since 1.1.0.2 -- @since 1.1.2.0
onException onException
:: forall n sig m a b :: forall n sig m a b
. (MonadUnliftIO n, Has (Lift n) sig m) . (MonadUnliftIO n, Has (Lift n) sig m)