| Safe Haskell | Safe |
|---|---|
| Language | Haskell98 |
UnexceptionalIO
Contents
Description
When you've caught all the exceptions that can be handled safely, this is what you're left with.
runEitherIO . fromIO ≡ id
Documentation
fromIO :: IO a -> UIO (Either SomeException a)
Catch any non-error, synchronous exceptions in an IO action
runEitherIO :: Exception e => UIO (Either e a) -> IO a
Unsafe entry points
fromIO' :: Exception e => IO a -> UIO (Either e a)
You promise that e covers all non-error, synchronous exceptions
thrown by this IO action
This function is partial if you lie
unsafeFromIO :: IO a -> UIO a
You promise there are no exceptions thrown by this IO action