Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell98 |
An interface for reporting "impossible" errors
- data Impossible = Impossible String Integer
- throwImpossible :: Impossible -> a
- catchImpossible :: IO a -> (Impossible -> IO a) -> IO a
Documentation
data Impossible Source
"Impossible" errors, annotated with a file name and a line number corresponding to the source code location of the error.
throwImpossible :: Impossible -> a Source
Abort by throwing an "impossible" error. You should not use
this function directly. Instead use the macro in undefined.h
.
catchImpossible :: IO a -> (Impossible -> IO a) -> IO a Source
Catch an "impossible" error, if possible.