ANSI Common Lisp 9 Conditions 9.1 Condition System Concepts
9.1.1 Condition Types
The next figure lists the standardized condition types.
Additional condition types can be defined by using define-condition.
Standardized Condition Types
| arithmetic-error |
floating-point-overflow |
simple-type-error |
| cell-error |
floating-point-underflow |
simple-warning |
| condition |
package-error |
storage-condition |
| control-error |
parse-error |
stream-error |
| division-by-zero |
print-not-readable |
style-warning |
| end-of-file |
program-error |
type-error |
| error |
reader-error |
unbound-slot |
| file-error |
serious-condition |
unbound-variable |
| floating-point-inexact |
simple-condition |
undefined-function |
| floating-point-invalid-operation |
simple-error |
warning |
All condition types are subtypes of type condition. That is,
(typep c 'condition) true
if and only if c is a condition.
Implementations must define all specified subtype relationships.
Except where noted, all subtype relationships indicated in
this document are not mutually exclusive.
A condition inherits the structure of its supertypes.
The metaclass of the class condition is not specified.
Names of condition types may be used to specify
supertype relationships in define-condition,
but the consequences are not specified if an attempt is made to use
a condition type as a superclass in a defclass form.
The next figure shows operators that
define condition types and creating conditions.
Operators that define and create conditions.
| define-condition |
make-condition |
|
The next figure shows operators that read
the value of condition slots.
Operators that read condition slots.
| arithmetic-error-operands |
simple-condition-format-arguments |
| arithmetic-error-operation |
simple-condition-format-control |
| cell-error-name |
stream-error-stream |
| file-error-pathname |
type-error-datum |
| package-error-package |
type-error-expected-type |
| print-not-readable-object |
unbound-slot-instance |
9.1.1.1 Serious Conditions
|