| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
GHC.Types.SourceError
Description
Source errors
Synopsis
- newtype SourceError = SourceError ErrorMessages
- mkSrcErr :: ErrorMessages -> SourceError
- srcErrorMessages :: SourceError -> ErrorMessages
- throwErrors :: MonadIO io => ErrorMessages -> io a
- throwOneError :: MonadIO io => MsgEnvelope DecoratedSDoc -> io a
- handleSourceError :: MonadCatch m => (SourceError -> m a) -> m a -> m a
Documentation
newtype SourceError #
A source error is an error that is caused by one or more errors in the
source code. A SourceError is thrown by many functions in the
compilation pipeline. Inside GHC these errors are merely printed via
log_action, but API clients may treat them differently, for example,
insert them into a list box. If you want the default behaviour, use the
idiom:
handleSourceError printExceptionAndWarnings $ do ... api calls that may fail ...
The SourceErrors error messages can be accessed via srcErrorMessages.
This list may be empty if the compiler failed due to -Werror
(Opt_WarnIsError).
See printExceptionAndWarnings for more information on what to take care
of when writing a custom error handler.
Constructors
| SourceError ErrorMessages |
Instances
| Exception SourceError # | |
Defined in GHC.Types.SourceError Methods toException :: SourceError -> SomeException Source # fromException :: SomeException -> Maybe SourceError Source # displayException :: SourceError -> String Source # | |
| Show SourceError # | |
Defined in GHC.Types.SourceError | |
mkSrcErr :: ErrorMessages -> SourceError #
throwErrors :: MonadIO io => ErrorMessages -> io a #
throwOneError :: MonadIO io => MsgEnvelope DecoratedSDoc -> io a #
Arguments
| :: MonadCatch m | |
| => (SourceError -> m a) | exception handler |
| -> m a | action to perform |
| -> m a |
Perform the given action and call the exception handler if the action
throws a SourceError. See SourceError for more information.