As a motivating example: in a Warp application, you can have code to
handle any exception. They will be pre-caught, so we can't use
catchBugsnag; we need to be able to go SomeException -> BugsnagException
ourselves. So this supports that. Additionally, we then have the Catch
module written in terms of it. Such DRY.
Note: catchesBugsnag was removed. If you're getting that far in the
weeds, you can just catch things yourself.
As a motivating example: in a Warp application, you can have code to handle any exception. They will be pre-caught, so we can't use catchBugsnag; we need to be able to go SomeException -> BugsnagException ourselves. So this supports that. Additionally, we then have the Catch module written in terms of it. Such DRY.
Note: catchesBugsnag was removed. If you're getting that far in the weeds, you can just catch things yourself.