Standard IO Errors.
An error replacement with call-site metadata.
This philosophy behind this package is that it is often better to find out all of the errors that have occured in a computation and report them simultaneously, rather than aborting as soon as the first error is encountered. Towards this end, this module supplies a type of combinable error messages so that all of the errors from subcomputations can be gathered and presented together.
New in version 1.1: Removed Monoid instance for Doc (it should now be supplied by ansi-wl-pprint), added ErrorMessageOr type alias.
Prior to base-22.214.171.124 there was no Eq instance for ErrorCall. This package provides an orphan instance.
The one-stop shop for all your error-handling needs! Just import Control.Error.
This library encourages an error-handling style that directly uses the type system, rather than out-of-band exceptions.
The Haskell 98 type for exceptions in the IO monad. Any I/O operation may raise an IOError instead of returning a result. For a more general type of exception, including also those that arise in pure code, see Control.Exception.Exception.
In Haskell 98, this is an opaque type.
Construct an IOError value with a string describing the error. The fail method of the IO instance of the Monad class raises a userError, thus:
> instance Monad IO
> fail s = ioError (userError s)
I/O error already exists.
I/O error single-use resource, which is already being used.
Adds a location description and maybe a file path and file handle to an IOError. If any of the file handle or file path is not given the corresponding value in the IOError remains unaltered.
I/O error not exist.
I/O error reached.
An abstract type that contains a value for each variant of IOError.
Show more results