yesod-auth-oauth2/src/UnliftIO/Except.hs
2023-04-05 17:51:19 -04:00

13 lines
333 B
Haskell

{-# OPTIONS_GHC -Wno-orphans #-}
module UnliftIO.Except
() where
import Control.Monad.Except
import UnliftIO
instance (MonadUnliftIO m, Exception e) => MonadUnliftIO (ExceptT e m) where
withRunInIO exceptToIO = ExceptT $ try $ do
withRunInIO $ \runInIO ->
exceptToIO (runInIO . (either throwIO pure <=< runExceptT))