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
|