morley-1.7.0: Developer tools for the Michelson Language
Safe HaskellNone
LanguageHaskell2010

Util.Exception

Synopsis

General simple helpers

throwLeft :: (MonadThrow m, Exception e) => m (Either e a) -> m a Source #

If monadic action returns a Left value, it will be thrown. Otherwise the returned value will be returned as is.

Common exceptions

Better printing of exceptions

displayUncaughtException :: IO () -> IO () Source #

Customise default uncaught exception handling. The problem with the default handler is that it uses show to display uncaught exceptions, but displayException may provide more reasonable output. We do not modify uncaught exception handler, but simply wrap uncaught exceptions (only synchronous ones) into DisplayExceptionInShow.

Some exceptions (currently we are aware only of ExitCode) are handled specially by default exception handler, so we don't wrap them.