The portable-condition-system Reference Manual

Next: , Previous: , Up: (dir)   [Contents][Index]

The portable-condition-system Reference Manual

This is the portable-condition-system Reference Manual, version 1.1.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Wed Jun 15 05:34:30 2022 GMT+0.

Table of Contents


1 Introduction

Portable Condition System

Description

This is an example implementation of the Common Lisp condition system, based on the original condition system implementation by Kent M. Pitman.

This code has been:

This system additionally defines a common-lisp+portable-condition-system package. It is equivalent to the common-lisp package, except all symbols related to the condition system are instead imported from the portable-condition-system, effectively overriding the condition system implementation from the host. This, along with running the portable-condition-system.integration:install function (see the integration system manual for details), ensures that the host's condition system is overridden by the custom one defined by portable-condition-system.

Background

The original comment from by Kent states:

This is a sample implementation. It is not in any way intended as the definition of any aspect of the condition system. It is simply an existence proof that the condition system can be implemented.

While this written to be "portable", this is not a portable condition system in that loading this file will not redefine your condition system. Loading this file will define a bunch of functions which work like a condition system. Redefining existing condition systems is beyond the goal of this implementation attempt.

This system has been created as a part of the efforts behind my upcoming book, The Common Lisp Condition System. It is meant to be educational material for people who want to see how to implement a condition system from scratch. Additionally, it may be used for Common Lisp implementations which do not have a condition system themselves and would nonetheless like to adopt.

Extending

The debugger itself is roughly extensible by means of defining new methods on the internal run-debugger-command generic function and pushing help-printing hooks onto *help-hooks*. See debugger.lisp for details.

Tests

The test suite has been adapted from ANSI-TEST at commit c4679fdd9966. To run it, evaluate (asdf:test-system :portable-condition-system) or manually load ASDF system portable-condition-system/test and run (portable-condition-system/test:run).

Example

Example debugger session:

PORTABLE-CONDITION-SYSTEM> (tagbody :go
                              (let ((condition (make-condition 'type-error
                                                               :datum 42
                                                               :expected-type 'string)))
                                (restart-case (invoke-debugger condition)
                                  (abort () :report "Abort.")
                                  (retry () :report "Retry." (go :go))
                                  (fail () :report "Fail."))))
;; Debugger level 1 entered on TYPE-ERROR:
;; The value
;;   42
;; is not of type
;;   STRING.
;; Type :HELP for available commands.
[1] Debug> :help

;; This is the standard debugger of the Portable Condition System.
;; The debugger read-eval-print loop supports the standard REPL variables:
;;   *   **   ***   +   ++   +++   /   //   ///   -
;;
;; Available debugger commands:
;;  :HELP              Show this text.
;;  :EVAL <form>       Evaluate a form typed after the :EVAL command.
;;  :REPORT            Report the condition the debugger was invoked with.
;;  :CONDITION         Return the condition object the debugger was invoked with.
;;  :RESTARTS          Print available restarts.
;;  :RESTART <n>, <n>  Invoke a restart with the given number.
;;  :ABORT, :Q         Exit by calling #'ABORT.
;;
;; Any non-keyword non-integer form is evaluated.
[1] Debug> :restarts

;; Available restarts:
;;  0: [ABORT] Abort.
;;  1: [RETRY] Retry.
;;  2: [FAIL ] Fail.
[1] Debug> (error "recursive debugger time")

;; Debugger level 2 entered on SIMPLE-ERROR:
;; recursive debugger time
;; Type :HELP for available commands.
[2] Debug> :restarts

;; Available restarts:
;;  0: [ABORT] Return to debugger level 1.
;;  1: [ABORT] Abort.
;;  2: [RETRY] Retry.
;;  3: [FAIL ] Fail.
[2] Debug> 0

[1] Debug> (+ 2 2)

4
[1] Debug> :eval (+ 22 22)

44
[1] Debug> +

(+ 22 22)
[1] Debug> ***

4
[1] Debug> :q

NIL
PORTABLE-CONDITION-SYSTEM> 

License

CC0 / Public Domain.

The test suite for this system is licensed under the MIT license.


2 Systems

The main system appears first, followed by any subsystem dependency.


Previous: , Up: Systems   [Contents][Index]

2.1 portable-condition-system

A portable condition system for Common Lisp

Maintainer

Michał "phoe" Herda <phoe@disroot.org>

Author

Kent M. Pitman <kent@nhplace.com>

License

CC0

Version

1.1.0

Dependencies
  • alexandria (system).
  • split-sequence (system).
Source

portable-condition-system.asd.

Child Components

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


Previous: , Up: Files   [Contents][Index]

3.1 Lisp


3.1.1 portable-condition-system/portable-condition-system.asd

Source

portable-condition-system.asd.

Parent Component

portable-condition-system (system).

ASDF Systems

portable-condition-system.


3.1.3 portable-condition-system/conditions.lisp

Dependency

package.lisp (file).

Source

portable-condition-system.asd.

Parent Component

portable-condition-system (system).

Public Interface
Internals

3.1.4 portable-condition-system/condition-hierarchy.lisp

Dependency

conditions.lisp (file).

Source

portable-condition-system.asd.

Parent Component

portable-condition-system (system).

Public Interface
Internals

3.1.5 portable-condition-system/coerce-to-condition.lisp

Dependency

condition-hierarchy.lisp (file).

Source

portable-condition-system.asd.

Parent Component

portable-condition-system (system).

Internals

coerce-to-condition (generic function).


3.1.6 portable-condition-system/restarts.lisp

Dependency

coerce-to-condition.lisp (file).

Source

portable-condition-system.asd.

Parent Component

portable-condition-system (system).

Public Interface
Internals

3.1.7 portable-condition-system/assertions.lisp

Dependency

restarts.lisp (file).

Source

portable-condition-system.asd.

Parent Component

portable-condition-system (system).

Public Interface
Internals

3.1.8 portable-condition-system/signaling.lisp

Dependency

assertions.lisp (file).

Source

portable-condition-system.asd.

Parent Component

portable-condition-system (system).

Public Interface
Internals

*handler-clusters* (special variable).


3.1.9 portable-condition-system/handlers.lisp

Dependency

signaling.lisp (file).

Source

portable-condition-system.asd.

Parent Component

portable-condition-system (system).

Public Interface
Internals

3.1.10 portable-condition-system/debugger.lisp

Dependency

handlers.lisp (file).

Source

portable-condition-system.asd.

Parent Component

portable-condition-system (system).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 portable-condition-system

Source

package.lisp.

Use List

common-lisp.

Used By List

common-lisp+portable-condition-system.

Public Interface
Internals

4.2 portable-condition-system/install

Source

package.lisp.

Use List

common-lisp.

Internals

generate-defpackages (macro).


4.3 common-lisp+portable-condition-system

Source

package.lisp.

Use List

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


Next: , Previous: , Up: Definitions   [Contents][Index]

5.1 Public Interface


Next: , Previous: , Up: Public Interface   [Contents][Index]

5.1.1 Special variables

Special Variable: *break-on-signals*

Declares a condition type for which all signaling functions will call BREAK before actually signaling the condition.

Package

portable-condition-system.

Source

signaling.lisp.

Special Variable: *debugger-hook*

If set, it is called as a function before entry into the debugger with two arguments: the condition object that the debugger is invoked with, and itself.

Package

portable-condition-system.

Source

debugger.lisp.


5.1.2 Macros

Macro: assert (test-form &optional places datum &rest arguments)

Evaluates TEST-FORM and checks if it is true; otherwise, signals a correctable error that allows the programmer to retry the assertion. If any places are supplied, the CONTINUE restart allows the programmer to set their values before retrying the assertion. The optional arguments DATUM and ARGUMENTS, if supplied, are used to report the assertion error.

Package

portable-condition-system.

Source

assertions.lisp.

Macro: ccase (keyform &rest cases)

Evaluates the keyform (which must be a place) and checks if it matches any of the keys in the provided cases. Signals a correctable error otherwise, allowing the programmer to modify the value stored in the keyform.

Package

portable-condition-system.

Source

assertions.lisp.

Macro: check-type (place type &optional type-string)

Evaluates PLACE and checks if its value is of the provided type. Otherwise, signals a correctable error with an established STORE-VALUE restart that allows the programmer to provide a new value for the place before the typecheck is retried. The optional TYPE-STRING argument is used to construct the report for the signaled error.

Package

portable-condition-system.

Source

assertions.lisp.

Macro: ctypecase (keyform &rest cases)

Evaluates the keyform (which must be a place) and checks if it is of any of the types in the provided cases. Signals a correctable error otherwise, allowing the programmer to modify the value stored in the keyform.

Package

portable-condition-system.

Source

assertions.lisp.

Macro: define-condition (name (&rest supertypes) direct-slots &rest options)

Defines or redefines a condition type.

Package

portable-condition-system.

Source

conditions.lisp.

Macro: ecase (keyform &rest cases)

Evaluates the keyform and checks if it matches any of the keys in the provided cases. Signals an error otherwise.

Package

portable-condition-system.

Source

assertions.lisp.

Macro: etypecase (keyform &rest cases)

Evaluates the keyform and checks if it is of any of the types in the provided cases. Signals an error otherwise.

Package

portable-condition-system.

Source

assertions.lisp.

Macro: handler-bind (bindings &body forms)

Executes the body forms in a dynamic context where the newly established handlers are available.

Package

portable-condition-system.

Source

handlers.lisp.

Macro: handler-case (form &rest cases)

Executes the body forms in a dynamic context where the newly established handlers are available. Each handler immediately transfers control to its handler case upon invocation, executing the body forms of the case and returning their value from HANDLER-CASE.

Package

portable-condition-system.

Source

handlers.lisp.

Macro: ignore-errors (&rest forms)

Executes the body forms in a dynamic context where a newly established ERROR handler is available. This handler handler immediately transfers control outside the form upon invocation, returning NIL as its primary value and the signaled condition object as its secondary value.

Package

portable-condition-system.

Source

handlers.lisp.

Macro: restart-bind (bindings &body body)

Executes the body forms in a dynamic context where the newly established restarts are available.

Package

portable-condition-system.

Source

restarts.lisp.

Macro: restart-case (expression &body cases)

Executes the body forms in a dynamic context where the newly established restarts are available. Each restart immediately transfers control to its restart case upon invocation, executing the body forms of the case and returning their value from RESTART-CASE.

Package

portable-condition-system.

Source

restarts.lisp.

Macro: with-condition-restarts (condition (&rest restarts) &body body)

Associates the provided condition object with multiple provided restart objects within the dynamic scope of the provided body forms.

Package

portable-condition-system.

Source

restarts.lisp.

Macro: with-simple-restart ((name format-control &rest args) &body forms)

Executes the body forms in a dynamic context where the newly established restart is available. This restart restart immediately transfers control outside the form upon invocation, returning NIL as its primary value and T as its secondary value.

Package

portable-condition-system.

Source

restarts.lisp.


5.1.3 Ordinary functions

Function: abort (&optional condition)

Invokes the most recent ABORT restart. If the optional condition argument is provided, instead the most recent ABORT restart that is not associated with any other condition. If no ABORT restart is available, or the restart fails to transfer control outside of this form, signals an error.

Package

portable-condition-system.

Source

restarts.lisp.

Function: break (&optional format-control &rest format-arguments)

Binds *debugger-hook* to NIL, establishes a CONTINUE restart, and invokes the debugger with a condition object whose report is constructed from the optional format control and format arguments.

Package

portable-condition-system.

Source

debugger.lisp.

Function: cerror (continue-string datum &rest arguments)

Coerces the provided arguments to a warning condition, establishes a CONTINUE restart, and signals the condition. If the condition is not handled, invokes the debugger with that condition, allowing execution to continue if the CONTINUE restart is invoked.

Package

portable-condition-system.

Source

signaling.lisp.

Function: continue (&optional condition)

Invokes the most recent CONTINUE restart. If the optional condition argument is provided, instead the most recent CONTINUE restart that is not associated with any other condition. If no CONTINUE restart is available, returns NIL.

Package

portable-condition-system.

Source

restarts.lisp.

Function: error (datum &rest arguments)

Coerces the provided arguments to an error condition and signals it. If the condition is not handled, invokes the debugger with that condition.

Package

portable-condition-system.

Source

signaling.lisp.

Function: make-condition (type &rest args)

Instantiates a new condition object of the provided type with the provided arguments.

Package

portable-condition-system.

Source

conditions.lisp.

Function: muffle-warning (&optional condition)

Invokes the most recent MUFFLE-WARNING restart. If the optional condition argument is provided, instead the most recent MUFFLE-WARNING restart that is not associated with any other condition. If no MUFFLE-WARNING restart is available, signals an error.

Package

portable-condition-system.

Source

restarts.lisp.

Reader: restart-name (instance)
Writer: (setf restart-name) (instance)
Package

portable-condition-system.

Source

restarts.lisp.

Target Slot

name.

Function: signal (datum &rest arguments)

Coerces the provided arguments to a condition and signals it, calling all condition handlers which match the type of the signaled condition.

Package

portable-condition-system.

Source

signaling.lisp.

Function: store-value (value &optional condition)

Invokes the most recent STORE-VALUE restart. If the optional condition argument is provided, instead the most recent STORE-VALUE restart that is not associated with any other condition. If no STORE-VALUE restart is available, returns NIL.

Package

portable-condition-system.

Source

restarts.lisp.

Function: use-value (value &optional condition)

Invokes the most recent USE-VALUE restart. If the optional condition argument is provided, instead the most recent USE-VALUE restart that is not associated with any other condition. If no USE-VALUE restart is available, returns NIL.

Package

portable-condition-system.

Source

restarts.lisp.

Function: warn (datum &rest arguments)

Coerces the provided arguments to a warning condition, establishes a MUFFLE-WARNING restart, and signals the condition. If the condition is not handled and the MUFFLE-WARNING restart is not invoked, the condition is reported to the error output stream.

Package

portable-condition-system.

Source

signaling.lisp.


5.1.4 Generic functions

Generic Reader: cell-error-name (object)
Package

portable-condition-system.

Methods
Reader Method: cell-error-name ((cell-error cell-error))

automatically generated reader method

Source

condition-hierarchy.lisp.

Target Slot

name.

Generic Function: compute-restarts (&optional condition)

Return a list of all currently established restarts. If the
optional condition argument is supplied, omits all restarts which are associated with conditions other than the provided one.

Package

portable-condition-system.

Source

restarts.lisp.

Methods
Method: compute-restarts (&optional condition)

Walks all restart clusters and collects all restarts which are visible.

Generic Function: find-restart (name &optional condition)

Finds the first currently established restart with the
provided name. If the optional condition argument is supplied, the search skips over all restarts which are associated with conditions other than the provided one.

Package

portable-condition-system.

Source

restarts.lisp.

Methods
Method: find-restart (name &optional condition)

Walks all restart clusters and returns the first restart with the correct name and visibility status.

Generic Function: invoke-debugger (condition)

Invokes the debugger with the provided condition object.

Package

portable-condition-system.

Source

debugger.lisp.

Methods
Method: invoke-debugger ((condition condition))

If the debugger hook is set, calls it with the condition object and itself. Then, enters the standard debugger.

Generic Function: invoke-restart (restart &rest arguments)

Invokes a restart with the provided argument. If the restart
is provided by name, this function calls FIND-RESTART with the provided name first and signals an error if no such restart is available. If the restart returns normally, returns the value returned by the restart function.

Package

portable-condition-system.

Source

restarts.lisp.

Methods
Method: invoke-restart ((restart restart) &rest arguments)

Apply the restart function to the provided arguments.

Method: invoke-restart ((restart symbol) &rest arguments)

Find the restart with the provided name and invoke it.

Method: invoke-restart (restart &rest arguments)

Signal an error that an invalid argument has been passed to INVOKE-RESTART.

Generic Function: invoke-restart-interactively (restart)

Invokes a restart after calling the restart’s interactive
function to retrieve a list of arguments for invoking the restart. If the restart is provided by name, this function calls FIND-RESTART with the provided name first and signals an error if no such restart is available. If the restart returns normally, returns the value returned by the restart function.

Package

portable-condition-system.

Source

restarts.lisp.

Methods
Method: invoke-restart-interactively ((restart restart))

Call the restart’s interactive function to obtain the list of arguments and apply the restart functions to them.

Method: invoke-restart-interactively ((restart symbol))

Find the restart with the provided name and invoke it.

Method: invoke-restart-interactively (restart)

Signal an error that an invalid argument has been passed to INVOKE-RESTART-INTERACTIVELY.

Generic Reader: package-error-package (object)
Package

portable-condition-system.

Methods
Reader Method: package-error-package ((package-error package-error))

automatically generated reader method

Source

condition-hierarchy.lisp.

Target Slot

package.

Generic Reader: print-not-readable-object (object)
Package

portable-condition-system.

Methods
Reader Method: print-not-readable-object ((print-not-readable print-not-readable))

automatically generated reader method

Source

condition-hierarchy.lisp.

Target Slot

object.

Generic Reader: simple-condition-format-arguments (object)
Package

portable-condition-system.

Methods
Reader Method: simple-condition-format-arguments ((simple-condition simple-condition))

automatically generated reader method

Source

condition-hierarchy.lisp.

Target Slot

format-arguments.

Generic Reader: simple-condition-format-control (object)
Package

portable-condition-system.

Methods
Reader Method: simple-condition-format-control ((simple-condition simple-condition))

automatically generated reader method

Source

condition-hierarchy.lisp.

Target Slot

format-control.

Generic Reader: stream-error-stream (object)
Package

portable-condition-system.

Methods
Reader Method: stream-error-stream ((stream-error stream-error))

automatically generated reader method

Source

condition-hierarchy.lisp.

Target Slot

stream.

Generic Reader: type-error-datum (object)
Package

portable-condition-system.

Methods
Reader Method: type-error-datum ((type-error type-error))

automatically generated reader method

Source

condition-hierarchy.lisp.

Target Slot

datum.

Generic Reader: type-error-expected-type (object)
Package

portable-condition-system.

Methods
Reader Method: type-error-expected-type ((type-error type-error))

automatically generated reader method

Source

condition-hierarchy.lisp.

Target Slot

expected-type.

Generic Reader: unbound-slot-instance (object)
Package

portable-condition-system.

Methods
Reader Method: unbound-slot-instance ((unbound-slot unbound-slot))

automatically generated reader method

Source

condition-hierarchy.lisp.

Target Slot

instance.


5.1.5 Standalone methods

Method: print-object ((condition0 unbound-slot) stream1)
Source

condition-hierarchy.lisp.

Method: print-object ((condition0 unbound-variable) stream1)
Source

condition-hierarchy.lisp.

Method: print-object :around ((condition condition) stream)

Prints of reports a condition to the provided stream. If *PRINT-ESCAPE* is bound, the condition is print unreadably; otherwise, it is reported by means of calling the next printing method.

Source

conditions.lisp.

Method: print-object ((condition condition) stream)

Default condition reporting method which prints the condition type.

Source

conditions.lisp.

Method: print-object ((condition0 undefined-function) stream1)
Source

condition-hierarchy.lisp.

Method: print-object ((restart restart) stream)

Reports a restart object to the provided stream.

The restart’s report function is called if present; otherwise, the restart’s name name is printed if present; otherwise, the restart object is printed unreadably.

Source

restarts.lisp.

Method: print-object :around ((restart restart) stream)

Prints of reports a restart to the provided stream. If *PRINT-ESCAPE* is bound, the restart is printed unreadably; otherwise, it is reported by means of calling the next printing method.

Source

restarts.lisp.

Method: print-object ((condition0 type-error) stream1)
Source

condition-hierarchy.lisp.

Method: print-object ((condition0 simple-condition) stream1)
Source

condition-hierarchy.lisp.

Method: print-object ((condition0 case-failure) stream1)
Source

condition-hierarchy.lisp.

Method: print-object ((condition0 restart-not-found) stream1)
Source

condition-hierarchy.lisp.

Method: print-object ((condition0 abort-failure) stream1)
Source

condition-hierarchy.lisp.


5.1.6 Structures

Structure: restart

A restart structure, implementing the ANSI CL system class RESTART.

Package

portable-condition-system.

Source

restarts.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: name
Initform

(portable-condition-system:error "name required.")

Readers

restart-name.

Writers

(setf restart-name).

Slot: function
Package

common-lisp.

Initform

(portable-condition-system:error "function required.")

Readers

restart-function.

Writers

(setf restart-function).

Slot: report-function
Readers

restart-report-function.

Writers

(setf restart-report-function).

Slot: interactive-function
Readers

restart-interactive-function.

Writers

(setf restart-interactive-function).

Slot: test-function
Initform

(constantly t)

Readers

restart-test-function.

Writers

(setf restart-test-function).

Slot: associated-conditions
Initform

(quote nil)

Readers

restart-associated-conditions.

Writers

(setf restart-associated-conditions).


Previous: , Up: Public Interface   [Contents][Index]

5.1.7 Classes

Class: arithmetic-error
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

error.

Direct subclasses
Direct methods
Direct slots
Slot: operation
Initargs

:operation

Readers

operation-error-operation.

Writers

This slot is read-only.

Slot: operands
Initargs

:operands

Readers

operands-error-operands.

Writers

This slot is read-only.

Class: cell-error
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

error.

Direct subclasses
Direct methods

cell-error-name.

Direct slots
Slot: name
Initargs

:name

Readers

cell-error-name.

Writers

This slot is read-only.

Class: condition

The base condition type that is the supertype of all condition objects.

Package

portable-condition-system.

Source

conditions.lisp.

Direct subclasses
Direct methods
Class: control-error
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

error.

Direct subclasses
Class: division-by-zero
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

arithmetic-error.

Class: end-of-file
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

stream-error.

Class: error
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

serious-condition.

Direct subclasses
Class: file-error
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

error.

Direct methods

pathname-error-pathname.

Direct slots
Slot: pathname
Package

common-lisp.

Initargs

:pathname

Readers

pathname-error-pathname.

Writers

This slot is read-only.

Class: floating-point-inexact
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

arithmetic-error.

Class: floating-point-invalid-operation
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

arithmetic-error.

Class: floating-point-overflow
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

arithmetic-error.

Class: floating-point-underflow
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

arithmetic-error.

Class: package-error
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

error.

Direct methods

package-error-package.

Direct slots
Slot: package
Package

common-lisp.

Initargs

:package

Readers

package-error-package.

Writers

This slot is read-only.

Class: parse-error
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

error.

Direct subclasses

reader-error.

Direct slots
Slot: stream
Package

common-lisp.

Class: print-not-readable
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

error.

Direct methods

print-not-readable-object.

Direct slots
Slot: object
Initargs

:object

Readers

print-not-readable-object.

Writers

This slot is read-only.

Class: program-error
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

error.

Class: reader-error
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses
Class: serious-condition
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

condition.

Direct subclasses
Class: simple-condition
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

condition.

Direct subclasses
Direct methods
Direct Default Initargs
InitargValue
:format-controlnil
:format-arguments(quote nil)
Direct slots
Slot: format-control
Initargs

:format-control

Readers

simple-condition-format-control.

Writers

This slot is read-only.

Slot: format-arguments
Initargs

:format-arguments

Readers

simple-condition-format-arguments.

Writers

This slot is read-only.

Class: simple-error
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses
Class: simple-type-error
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses
Class: simple-warning
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses
Class: storage-condition
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

serious-condition.

Class: stream-error
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

error.

Direct subclasses
Direct methods

stream-error-stream.

Direct slots
Slot: stream
Package

common-lisp.

Initargs

:stream

Readers

stream-error-stream.

Writers

This slot is read-only.

Class: style-warning
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

warning.

Class: type-error
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

error.

Direct subclasses
Direct methods
Direct slots
Slot: datum
Initargs

:datum

Readers

type-error-datum.

Writers

This slot is read-only.

Slot: expected-type
Initargs

:expected-type

Readers

type-error-expected-type.

Writers

This slot is read-only.

Class: unbound-slot
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

cell-error.

Direct methods
Direct slots
Slot: instance
Initargs

:instance

Readers

unbound-slot-instance.

Writers

This slot is read-only.

Class: unbound-variable
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

cell-error.

Direct methods

print-object.

Class: undefined-function
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

cell-error.

Direct methods

print-object.

Class: warning
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

condition.

Direct subclasses

5.2 Internals


Next: , Previous: , Up: Internals   [Contents][Index]

5.2.1 Special variables

Special Variable: *debug-level*

A variable holding the current debugger level, rebound dynamically on each debugger entry.

Package

portable-condition-system.

Source

debugger.lisp.

Special Variable: *handler-clusters*

A list containing a list of all handler clusters, where a cluster is a list of handlers established together.

Package

portable-condition-system.

Source

signaling.lisp.

Special Variable: *help-hooks*

A list of hooks that are called when the :HELP debugger command is invoked. Each hook must be a function that accepts a condition object that the debugger was entered with and a stream that the hook should print to.

Package

portable-condition-system.

Source

debugger.lisp.

Special Variable: *restart-clusters*

A list containing a list of all restart clusters, where a cluster is a list of restarts established together.

Package

portable-condition-system.

Source

restarts.lisp.

Special Variable: *skip-debugger-prefix*

Whether or not to avoid printing the debugger line prefix when executing a command.

Package

portable-condition-system.

Source

debugger.lisp.


5.2.2 Macros

Macro: define-command (name (stream condition &rest arguments) &body body)

Accepts a command name (which should be a keyword) and generates a DEFMETHOD form in which the stream, condition, and argument variables are available for use inside the method body.

Package

portable-condition-system.

Source

debugger.lisp.

Macro: generate-defpackages ()

Generates the package definition forms which utilize PCS-SYMBOLS.

Package

portable-condition-system/install.

Source

package.lisp.

Macro: with-store-value-restart ((temp-var place tag) &body forms)

Evaluates the provided forms in an environment with a freshly established STORE-VALUE restart. The arguments accepted by the macro are a pair of places that should be set by the restart and the TAGBODY tag that control should be transferred to after setting the value.

Package

portable-condition-system.

Source

assertions.lisp.


Next: , Previous: , Up: Internals   [Contents][Index]

5.2.3 Ordinary functions

Function: assert-prompt (place-name value)

Queries the programmer whether they would like to modify the value of a given place. If not, returns the old value; if yes, queries the programmer for an expression to evaluate and returns its value.

If the old place is a symbol naming a variable, it is dynamically bound by PROGV to its old value, so the programmer can use it in the newly evaluated expression.

Package

portable-condition-system.

Source

assertions.lisp.

Function: assert-restart-report (names stream)

Reports the restart bound by ASSERT, printing the list of places supplied to ASSERT, if any.

Package

portable-condition-system.

Source

assertions.lisp.

Function: case-accumulate-keys (cases)

Collects all keys from the provided cases into a single list.

Package

portable-condition-system.

Source

assertions.lisp.

Function: case-failure (datum complex-type operator-name keys)

Signals a CASE-FAILURE error using the provided datum, the name of the case operator, complex type specifier, and the case keys which were not matched.

Package

portable-condition-system.

Source

assertions.lisp.

Function: case-transform-t-otherwise-cases (cases)

Transforms T/OTHERWISE cases to prevent them from having a special effect in CASE.

Package

portable-condition-system.

Source

assertions.lisp.

Function: check-type-error (place value type type-string)

Instantiates an error object suitable to signal within CHECK-TYPE, using the provided place, value, and expected type or provided type string.

Package

portable-condition-system.

Source

assertions.lisp.

Function: copy-restart (instance)
Package

portable-condition-system.

Source

restarts.lisp.

Function: debugger-invoke-restart (name stream condition)

Finds and invokes a restart with the given name; if no such restart is available, informs the user about that fact.

Package

portable-condition-system.

Source

debugger.lisp.

Function: expand-define-condition (name supertypes direct-slots options)

Defines a new condition type via DEFCLASS, handling the :REPORT options via defining a PRINT-object method on the newly created class.

Package

portable-condition-system.

Source

conditions.lisp.

Function: expand-define-condition-remove-report-method (name)

Accepts the method name and expands into a form which removes any PRINT-OBJECT method defined on the class named by NAME.

Package

portable-condition-system.

Source

conditions.lisp.

Function: expand-define-condition-report-method (name report-option)

Accepts the name of the condition being defined and the report option provided to DEFINE-CONDITION, and returns a DEFMETHOD PRINT-OBJECT form meant to be spliced into the generated DEFINE-CONDITION expansion.

Package

portable-condition-system.

Source

conditions.lisp.

Function: handler-case-make-handler-binding (temp-var datum)

Accepts an annotated HANDLER-CASE case and generates a HANDLER-BIND binding based on it.

Package

portable-condition-system.

Source

handlers.lisp.

Function: handler-case-make-handler-case (block-name temp-var datum)

Accepts an annotated HANDLER-CASE case and generates a TAGBODY case based on it.

Package

portable-condition-system.

Source

handlers.lisp.

Function: handler-case-parse-case (datum)

Parses and annotates a handler case with a unique go tag.

Package

portable-condition-system.

Source

handlers.lisp.

Function: make-handler-case-with-no-error-case (form cases)

Generates the HANDLER-CASE body in situation where a :NO-ERROR case is provided.

Package

portable-condition-system.

Source

handlers.lisp.

Function: make-handler-case-without-no-error-case (form cases)

Generates the HANDLER-CASE body in situation where no :NO-ERROR case is provided.

Package

portable-condition-system.

Source

handlers.lisp.

Function: make-restart (&key name function report-function interactive-function test-function associated-conditions)
Package

portable-condition-system.

Source

restarts.lisp.

Function: maybe-invoke-restart (restart-name &optional condition errorp &rest arguments)

Searches for a restart with the provided restart name, using the optionally provided condition argument during the search. If a restart is found, it is invoked; otherwise, if ERRORP is true, a RESTART-NOT-FOUND error is signaled. Otherwise, this function returns NIL.

Package

portable-condition-system.

Source

restarts.lisp.

Function: read-eval-print-command (stream condition)

Implements a single read-eval-print pass of the debugger REPL. Keywords are treated as debugger commands and integers are treated as arguments to :RESTART.

Package

portable-condition-system.

Source

debugger.lisp.

Function: report-case-failure (condition stream)
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Function: report-simple-condition (condition stream)
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Function: report-type-error (condition stream)
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Function: report-unbound-slot (condition stream)
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Function: report-unbound-variable (condition stream)
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Function: report-undefined-function (condition stream)
Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Reader: restart-associated-conditions (instance)
Writer: (setf restart-associated-conditions) (instance)
Package

portable-condition-system.

Source

restarts.lisp.

Target Slot

associated-conditions.

Function: restart-bind-transform-binding (binding)

Transforms the RESTART-BIND binding into a MAKE-RESTART form.

Package

portable-condition-system.

Source

restarts.lisp.

Function: restart-case-expand-cerror (expansion)

Expands the provided CERROR form into a signaling form whose condition is associated with the restarts that are newly established by HANDLER-CASE.

Package

portable-condition-system.

Source

restarts.lisp.

Function: restart-case-expand-non-cerror (expansion)

Expands the provided SIGNAL, WARN, or ERROR form into a signaling form whose condition is associated with the restarts that are newly established by HANDLER-CASE.

Package

portable-condition-system.

Source

restarts.lisp.

Function: restart-case-expand-signaling-form (expression env)

Expands the provided signaling form into a signaling form whose condition is associated with the restarts that are newly established by HANDLER-CASE.

Package

portable-condition-system.

Source

restarts.lisp.

Function: restart-case-make-interactive-subform (interactive)

Accepts an argument to HANDLER-CASE’s :INTERACTIVE option and generates a :INTERACTIVE-FUNCTION subform, meant to be spliced into the HANDLER-BIND binding generated by HANDLER-CASE.

Package

portable-condition-system.

Source

restarts.lisp.

Function: restart-case-make-report-subform (report)

Accepts an argument to HANDLER-CASE’s :REPORT option and generates a :REPORT-FUNCTION subform, meant to be spliced into the HANDLER-BIND binding generated by HANDLER-CASE.

Package

portable-condition-system.

Source

restarts.lisp.

Function: restart-case-make-restart-binding (temp-var parsed-case)

Accepts a parsed RESTART-CASE case and generates a RESTART-BIND binding based on it.

Package

portable-condition-system.

Source

restarts.lisp.

Function: restart-case-make-restart-case (block-tag temp-var parsed-case)

Accepts a parsed RESTART-CASE case and generates a TAGBODY case based on it.

Package

portable-condition-system.

Source

restarts.lisp.

Function: restart-case-make-test-subform (test)

Accepts an argument to HANDLER-CASE’s :TEST option and generates a :TEST-FUNCTION subform, meant to be spliced into the HANDLER-BIND binding generated by HANDLER-CASE.

Package

portable-condition-system.

Source

restarts.lisp.

Function: restart-case-parse-case (case)

Parses the provided handler case and returns five values: restart name, lambda list of the restart case, a list of HANDLER-BIND keywords meant to be spliced into the handler binding, the body forms of the handler case, and a globally unique symbol that is meant to be used as a GO tag within the main body of HANDLER-CASE.

Package

portable-condition-system.

Source

restarts.lisp.

Function: restart-case-pop-keywords-from-case (case-forms)

Accepts the forms of a handler case following the case’s lambda list and parses that form, checking for the presence of :REPORT, :INTERACTIVE, and :TEST keywords within the case’s body. Returns four values: the body forms of the case remaining after removing the aforementioned keyword-argument pairs, and the values of :REPORT, :INTERACTIVE, and :TEST keywords found in the body (or NIL, if the respective keyword was not found).

Package

portable-condition-system.

Source

restarts.lisp.

Function: restart-case-signaling-form-p (expression env)

Returns true if the expression provided to RESTART-CASE is a known condition-signaling form whose condition should be associated with the restarts that are newly established by HANDLER-CASE.

Package

portable-condition-system.

Source

restarts.lisp.

Reader: restart-function (instance)
Writer: (setf restart-function) (instance)
Package

portable-condition-system.

Source

restarts.lisp.

Target Slot

function.

Reader: restart-interactive-function (instance)
Writer: (setf restart-interactive-function) (instance)
Package

portable-condition-system.

Source

restarts.lisp.

Target Slot

interactive-function.

Function: restart-max-name-length (restarts)

Returns the length of the longest name from the provided restarts.

Package

portable-condition-system.

Source

debugger.lisp.

Function: restart-p (object)
Package

portable-condition-system.

Source

restarts.lisp.

Reader: restart-report-function (instance)
Writer: (setf restart-report-function) (instance)
Package

portable-condition-system.

Source

restarts.lisp.

Target Slot

report-function.

Reader: restart-test-function (instance)
Writer: (setf restart-test-function) (instance)
Package

portable-condition-system.

Source

restarts.lisp.

Target Slot

test-function.

Function: restart-visible-p (restart condition)

Returns true if the restart should be visible when computed for a given condition object. If the condition is null, return true; otherwise, if the restart is associated with a different condition, return false; otherwise, return true.

Package

portable-condition-system.

Source

restarts.lisp.

Function: standard-debugger (condition &optional stream)

Implements the standard debugger.

Package

portable-condition-system.

Source

debugger.lisp.

Function: store-value-read-evaluated-form ()

Queries the user for a single form to be evaluated, then reads and evaluates that form.

Package

portable-condition-system.

Source

assertions.lisp.


Next: , Previous: , Up: Internals   [Contents][Index]

5.2.4 Generic functions

Generic Reader: case-failure-name (object)
Package

portable-condition-system.

Methods
Reader Method: case-failure-name ((case-failure case-failure))

automatically generated reader method

Source

condition-hierarchy.lisp.

Target Slot

name.

Generic Reader: case-failure-possibilities (object)
Package

portable-condition-system.

Methods
Reader Method: case-failure-possibilities ((case-failure case-failure))

automatically generated reader method

Source

condition-hierarchy.lisp.

Target Slot

possibilities.

Generic Function: coerce-to-condition (datum arguments default-type name)

Attempts to coerce the provided arguments into a condition
object. The DEFAULT-TYPE argument describes the default condition type that should be created if no condition type can be inferred from DATUM; the NAME argument is the name of the coercing operator and is used during invalid coercions to properly report the error.

Package

portable-condition-system.

Source

coerce-to-condition.lisp.

Methods
Method: coerce-to-condition (datum arguments default-type name)

Signals an error that the provided datum is not coercible to a condition object.

Method: coerce-to-condition ((datum function) arguments default-type name)

Makes a SIMPLE-CONDITION of the provided DEFAULT-TYPE, using the DATUM function as its format control and ARGUMENTS as format arguments.

Method: coerce-to-condition ((datum string) arguments default-type name)

Makes a SIMPLE-CONDITION of the provided DEFAULT-TYPE, using the DATUM string as its format control and ARGUMENTS as its format arguments.

Method: coerce-to-condition ((datum symbol) arguments default-type name)

Calls MAKE-CONDITION on the provided symbol and arguments.

Method: coerce-to-condition ((datum condition) arguments default-type name)

Returns the condition object that was passed to the function. If arguments are non-NIL, signals a continuable error.

Generic Reader: operands-error-operands (object)
Package

portable-condition-system.

Methods
Reader Method: operands-error-operands ((arithmetic-error arithmetic-error))

automatically generated reader method

Source

condition-hierarchy.lisp.

Target Slot

operands.

Generic Reader: operation-error-operation (object)
Package

portable-condition-system.

Methods
Reader Method: operation-error-operation ((arithmetic-error arithmetic-error))

automatically generated reader method

Source

condition-hierarchy.lisp.

Target Slot

operation.

Generic Reader: pathname-error-pathname (object)
Package

portable-condition-system.

Methods
Reader Method: pathname-error-pathname ((file-error file-error))

automatically generated reader method

Source

condition-hierarchy.lisp.

Target Slot

pathname.

Generic Reader: restart-not-found-restart-name (object)
Package

portable-condition-system.

Methods
Reader Method: restart-not-found-restart-name ((restart-not-found restart-not-found))

automatically generated reader method

Source

condition-hierarchy.lisp.

Target Slot

restart-name.

Generic Function: run-debugger-command (command stream condition &rest arguments)

Executes the provided debugger command, reading input from
and printing output to the provided stream. The condition object the debugger was entered with and optional command arguments are available for use within the command itself.

Package

portable-condition-system.

Source

debugger.lisp.

Methods
Method: run-debugger-command ((command0 (eql :help)) stream condition &rest arguments1)

Prints the debugger help.

Method: run-debugger-command ((command0 (eql :c)) stream condition &rest arguments1)

Shorthand for :CONTINUE.

Method: run-debugger-command ((command0 (eql :continue)) stream condition &rest arguments1)

Finds and invokes the CONTINUE restart; if no such restart is available, informs the user about that fact.

Method: run-debugger-command ((command0 (eql :q)) stream condition &rest arguments1)

Shorthand for :ABORT.

Method: run-debugger-command ((command0 (eql :abort)) stream condition &rest arguments1)

Finds and invokes the ABORT restart; if no such restart is available, informs the user about that fact.

Method: run-debugger-command ((command0 (eql :restart)) stream condition &rest arguments1)

Invokes a particular restart.

Method: run-debugger-command ((command0 (eql :restarts)) stream condition &rest arguments1)

Prints a list of available restarts.

Method: run-debugger-command ((command0 (eql :condition)) stream condition &rest arguments1)

Returns the condition object that the debugger was entered with.

Method: run-debugger-command ((command0 (eql :report)) stream condition &rest arguments1)

Informs the user that the debugger has been entered and reports the condition object the debugger was entered with.

Method: run-debugger-command ((command0 (eql :eval)) stream condition &rest arguments1)

Evaluates a form. The form may be provided as an optional argument; otherwise, it read from the provided stream.

Method: run-debugger-command :around ((command (eql :eval)) stream condition &rest arguments)

Prevents eval commands from having semicolons printed before them.

Method: run-debugger-command (command stream condition &rest arguments)

Informs the user that the provided debugger command was not recognized.

Method: run-debugger-command :around (command stream condition &rest arguments)

Prefixes each line of output with semicolons unless told not to.


Previous: , Up: Internals   [Contents][Index]

5.2.5 Classes

Class: abort-failure

A condition type signaled when the ABORT restart invoked by function ABORT failed to transfer control outside of the function.

Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

control-error.

Direct methods

print-object.

Class: case-failure

A condition type signaled when a case assertion
(such as ECASE, ETYPECASE, CCASE, or CTYPECASE) fails to match its keyform.

Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

type-error.

Direct methods
Direct slots
Slot: name
Initargs

:name

Readers

case-failure-name.

Writers

This slot is read-only.

Slot: possibilities
Initargs

:possibilities

Readers

case-failure-possibilities.

Writers

This slot is read-only.

Class: restart-not-found

A condition type signaled when a restart with a given name was not found, even thought it was expected.

Package

portable-condition-system.

Source

condition-hierarchy.lisp.

Direct superclasses

control-error.

Direct methods
Direct slots
Slot: restart-name
Initargs

:restart-name

Readers

restart-not-found-restart-name.

Writers

This slot is read-only.


Appendix A Indexes


Next: , Previous: , Up: Indexes   [Contents][Index]

A.1 Concepts


Next: , Previous: , Up: Indexes   [Contents][Index]

A.2 Functions

Jump to:   (  
A   B   C   D   E   F   G   H   I   M   O   P   R   S   T   U   W  
Index Entry  Section

(
(setf restart-associated-conditions): Private ordinary functions
(setf restart-function): Private ordinary functions
(setf restart-interactive-function): Private ordinary functions
(setf restart-name): Public ordinary functions
(setf restart-report-function): Private ordinary functions
(setf restart-test-function): Private ordinary functions

A
abort: Public ordinary functions
assert: Public macros
assert-prompt: Private ordinary functions
assert-restart-report: Private ordinary functions

B
break: Public ordinary functions

C
case-accumulate-keys: Private ordinary functions
case-failure: Private ordinary functions
case-failure-name: Private generic functions
case-failure-name: Private generic functions
case-failure-possibilities: Private generic functions
case-failure-possibilities: Private generic functions
case-transform-t-otherwise-cases: Private ordinary functions
ccase: Public macros
cell-error-name: Public generic functions
cell-error-name: Public generic functions
cerror: Public ordinary functions
check-type: Public macros
check-type-error: Private ordinary functions
coerce-to-condition: Private generic functions
coerce-to-condition: Private generic functions
coerce-to-condition: Private generic functions
coerce-to-condition: Private generic functions
coerce-to-condition: Private generic functions
coerce-to-condition: Private generic functions
compute-restarts: Public generic functions
compute-restarts: Public generic functions
continue: Public ordinary functions
copy-restart: Private ordinary functions
ctypecase: Public macros

D
debugger-invoke-restart: Private ordinary functions
define-command: Private macros
define-condition: Public macros

E
ecase: Public macros
error: Public ordinary functions
etypecase: Public macros
expand-define-condition: Private ordinary functions
expand-define-condition-remove-report-method: Private ordinary functions
expand-define-condition-report-method: Private ordinary functions

F
find-restart: Public generic functions
find-restart: Public generic functions
Function, (setf restart-associated-conditions): Private ordinary functions
Function, (setf restart-function): Private ordinary functions
Function, (setf restart-interactive-function): Private ordinary functions
Function, (setf restart-name): Public ordinary functions
Function, (setf restart-report-function): Private ordinary functions
Function, (setf restart-test-function): Private ordinary functions
Function, abort: Public ordinary functions
Function, assert-prompt: Private ordinary functions
Function, assert-restart-report: Private ordinary functions
Function, break: Public ordinary functions
Function, case-accumulate-keys: Private ordinary functions
Function, case-failure: Private ordinary functions
Function, case-transform-t-otherwise-cases: Private ordinary functions
Function, cerror: Public ordinary functions
Function, check-type-error: Private ordinary functions
Function, continue: Public ordinary functions
Function, copy-restart: Private ordinary functions
Function, debugger-invoke-restart: Private ordinary functions
Function, error: Public ordinary functions
Function, expand-define-condition: Private ordinary functions
Function, expand-define-condition-remove-report-method: Private ordinary functions
Function, expand-define-condition-report-method: Private ordinary functions
Function, handler-case-make-handler-binding: Private ordinary functions
Function, handler-case-make-handler-case: Private ordinary functions
Function, handler-case-parse-case: Private ordinary functions
Function, make-condition: Public ordinary functions
Function, make-handler-case-with-no-error-case: Private ordinary functions
Function, make-handler-case-without-no-error-case: Private ordinary functions
Function, make-restart: Private ordinary functions
Function, maybe-invoke-restart: Private ordinary functions
Function, muffle-warning: Public ordinary functions
Function, read-eval-print-command: Private ordinary functions
Function, report-case-failure: Private ordinary functions
Function, report-simple-condition: Private ordinary functions
Function, report-type-error: Private ordinary functions
Function, report-unbound-slot: Private ordinary functions
Function, report-unbound-variable: Private ordinary functions
Function, report-undefined-function: Private ordinary functions
Function, restart-associated-conditions: Private ordinary functions
Function, restart-bind-transform-binding: Private ordinary functions
Function, restart-case-expand-cerror: Private ordinary functions
Function, restart-case-expand-non-cerror: Private ordinary functions
Function, restart-case-expand-signaling-form: Private ordinary functions
Function, restart-case-make-interactive-subform: Private ordinary functions
Function, restart-case-make-report-subform: Private ordinary functions
Function, restart-case-make-restart-binding: Private ordinary functions
Function, restart-case-make-restart-case: Private ordinary functions
Function, restart-case-make-test-subform: Private ordinary functions
Function, restart-case-parse-case: Private ordinary functions
Function, restart-case-pop-keywords-from-case: Private ordinary functions
Function, restart-case-signaling-form-p: Private ordinary functions
Function, restart-function: Private ordinary functions
Function, restart-interactive-function: Private ordinary functions
Function, restart-max-name-length: Private ordinary functions
Function, restart-name: Public ordinary functions
Function, restart-p: Private ordinary functions
Function, restart-report-function: Private ordinary functions
Function, restart-test-function: Private ordinary functions
Function, restart-visible-p: Private ordinary functions
Function, signal: Public ordinary functions
Function, standard-debugger: Private ordinary functions
Function, store-value: Public ordinary functions
Function, store-value-read-evaluated-form: Private ordinary functions
Function, use-value: Public ordinary functions
Function, warn: Public ordinary functions

G
generate-defpackages: Private macros
Generic Function, case-failure-name: Private generic functions
Generic Function, case-failure-possibilities: Private generic functions
Generic Function, cell-error-name: Public generic functions
Generic Function, coerce-to-condition: Private generic functions
Generic Function, compute-restarts: Public generic functions
Generic Function, find-restart: Public generic functions
Generic Function, invoke-debugger: Public generic functions
Generic Function, invoke-restart: Public generic functions
Generic Function, invoke-restart-interactively: Public generic functions
Generic Function, operands-error-operands: Private generic functions
Generic Function, operation-error-operation: Private generic functions
Generic Function, package-error-package: Public generic functions
Generic Function, pathname-error-pathname: Private generic functions
Generic Function, print-not-readable-object: Public generic functions
Generic Function, restart-not-found-restart-name: Private generic functions
Generic Function, run-debugger-command: Private generic functions
Generic Function, simple-condition-format-arguments: Public generic functions
Generic Function, simple-condition-format-control: Public generic functions
Generic Function, stream-error-stream: Public generic functions
Generic Function, type-error-datum: Public generic functions
Generic Function, type-error-expected-type: Public generic functions
Generic Function, unbound-slot-instance: Public generic functions

H
handler-bind: Public macros
handler-case: Public macros
handler-case-make-handler-binding: Private ordinary functions
handler-case-make-handler-case: Private ordinary functions
handler-case-parse-case: Private ordinary functions

I
ignore-errors: Public macros
invoke-debugger: Public generic functions
invoke-debugger: Public generic functions
invoke-restart: Public generic functions
invoke-restart: Public generic functions
invoke-restart: Public generic functions
invoke-restart: Public generic functions
invoke-restart-interactively: Public generic functions
invoke-restart-interactively: Public generic functions
invoke-restart-interactively: Public generic functions
invoke-restart-interactively: Public generic functions

M
Macro, assert: Public macros
Macro, ccase: Public macros
Macro, check-type: Public macros
Macro, ctypecase: Public macros
Macro, define-command: Private macros
Macro, define-condition: Public macros
Macro, ecase: Public macros
Macro, etypecase: Public macros
Macro, generate-defpackages: Private macros
Macro, handler-bind: Public macros
Macro, handler-case: Public macros
Macro, ignore-errors: Public macros
Macro, restart-bind: Public macros
Macro, restart-case: Public macros
Macro, with-condition-restarts: Public macros
Macro, with-simple-restart: Public macros
Macro, with-store-value-restart: Private macros
make-condition: Public ordinary functions
make-handler-case-with-no-error-case: Private ordinary functions
make-handler-case-without-no-error-case: Private ordinary functions
make-restart: Private ordinary functions
maybe-invoke-restart: Private ordinary functions
Method, case-failure-name: Private generic functions
Method, case-failure-possibilities: Private generic functions
Method, cell-error-name: Public generic functions
Method, coerce-to-condition: Private generic functions
Method, coerce-to-condition: Private generic functions
Method, coerce-to-condition: Private generic functions
Method, coerce-to-condition: Private generic functions
Method, coerce-to-condition: Private generic functions
Method, compute-restarts: Public generic functions
Method, find-restart: Public generic functions
Method, invoke-debugger: Public generic functions
Method, invoke-restart: Public generic functions
Method, invoke-restart: Public generic functions
Method, invoke-restart: Public generic functions
Method, invoke-restart-interactively: Public generic functions
Method, invoke-restart-interactively: Public generic functions
Method, invoke-restart-interactively: Public generic functions
Method, operands-error-operands: Private generic functions
Method, operation-error-operation: Private generic functions
Method, package-error-package: Public generic functions
Method, pathname-error-pathname: Private generic functions
Method, print-not-readable-object: Public generic functions
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, restart-not-found-restart-name: Private generic functions
Method, run-debugger-command: Private generic functions
Method, run-debugger-command: Private generic functions
Method, run-debugger-command: Private generic functions
Method, run-debugger-command: Private generic functions
Method, run-debugger-command: Private generic functions
Method, run-debugger-command: Private generic functions
Method, run-debugger-command: Private generic functions
Method, run-debugger-command: Private generic functions
Method, run-debugger-command: Private generic functions
Method, run-debugger-command: Private generic functions
Method, run-debugger-command: Private generic functions
Method, run-debugger-command: Private generic functions
Method, run-debugger-command: Private generic functions
Method, simple-condition-format-arguments: Public generic functions
Method, simple-condition-format-control: Public generic functions
Method, stream-error-stream: Public generic functions
Method, type-error-datum: Public generic functions
Method, type-error-expected-type: Public generic functions
Method, unbound-slot-instance: Public generic functions
muffle-warning: Public ordinary functions

O
operands-error-operands: Private generic functions
operands-error-operands: Private generic functions
operation-error-operation: Private generic functions
operation-error-operation: Private generic functions

P
package-error-package: Public generic functions
package-error-package: Public generic functions
pathname-error-pathname: Private generic functions
pathname-error-pathname: Private generic functions
print-not-readable-object: Public generic functions
print-not-readable-object: Public generic functions
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods

R
read-eval-print-command: Private ordinary functions
report-case-failure: Private ordinary functions
report-simple-condition: Private ordinary functions
report-type-error: Private ordinary functions
report-unbound-slot: Private ordinary functions
report-unbound-variable: Private ordinary functions
report-undefined-function: Private ordinary functions
restart-associated-conditions: Private ordinary functions
restart-bind: Public macros
restart-bind-transform-binding: Private ordinary functions
restart-case: Public macros
restart-case-expand-cerror: Private ordinary functions
restart-case-expand-non-cerror: Private ordinary functions
restart-case-expand-signaling-form: Private ordinary functions
restart-case-make-interactive-subform: Private ordinary functions
restart-case-make-report-subform: Private ordinary functions
restart-case-make-restart-binding: Private ordinary functions
restart-case-make-restart-case: Private ordinary functions
restart-case-make-test-subform: Private ordinary functions
restart-case-parse-case: Private ordinary functions
restart-case-pop-keywords-from-case: Private ordinary functions
restart-case-signaling-form-p: Private ordinary functions
restart-function: Private ordinary functions
restart-interactive-function: Private ordinary functions
restart-max-name-length: Private ordinary functions
restart-name: Public ordinary functions
restart-not-found-restart-name: Private generic functions
restart-not-found-restart-name: Private generic functions
restart-p: Private ordinary functions
restart-report-function: Private ordinary functions
restart-test-function: Private ordinary functions
restart-visible-p: Private ordinary functions
run-debugger-command: Private generic functions
run-debugger-command: Private generic functions
run-debugger-command: Private generic functions
run-debugger-command: Private generic functions
run-debugger-command: Private generic functions
run-debugger-command: Private generic functions
run-debugger-command: Private generic functions
run-debugger-command: Private generic functions
run-debugger-command: Private generic functions
run-debugger-command: Private generic functions
run-debugger-command: Private generic functions
run-debugger-command: Private generic functions
run-debugger-command: Private generic functions
run-debugger-command: Private generic functions

S
signal: Public ordinary functions
simple-condition-format-arguments: Public generic functions
simple-condition-format-arguments: Public generic functions
simple-condition-format-control: Public generic functions
simple-condition-format-control: Public generic functions
standard-debugger: Private ordinary functions
store-value: Public ordinary functions
store-value-read-evaluated-form: Private ordinary functions
stream-error-stream: Public generic functions
stream-error-stream: Public generic functions

T
type-error-datum: Public generic functions
type-error-datum: Public generic functions
type-error-expected-type: Public generic functions
type-error-expected-type: Public generic functions

U
unbound-slot-instance: Public generic functions
unbound-slot-instance: Public generic functions
use-value: Public ordinary functions

W
warn: Public ordinary functions
with-condition-restarts: Public macros
with-simple-restart: Public macros
with-store-value-restart: Private macros

Jump to:   (  
A   B   C   D   E   F   G   H   I   M   O   P   R   S   T   U   W  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.3 Variables

Jump to:   *  
A   D   E   F   I   N   O   P   R   S   T  
Index Entry  Section

*
*break-on-signals*: Public special variables
*debug-level*: Private special variables
*debugger-hook*: Public special variables
*handler-clusters*: Private special variables
*help-hooks*: Private special variables
*restart-clusters*: Private special variables
*skip-debugger-prefix*: Private special variables

A
associated-conditions: Public structures

D
datum: Public classes

E
expected-type: Public classes

F
format-arguments: Public classes
format-control: Public classes
function: Public structures

I
instance: Public classes
interactive-function: Public structures

N
name: Public structures
name: Public classes
name: Private classes

O
object: Public classes
operands: Public classes
operation: Public classes

P
package: Public classes
pathname: Public classes
possibilities: Private classes

R
report-function: Public structures
restart-name: Private classes

S
Slot, associated-conditions: Public structures
Slot, datum: Public classes
Slot, expected-type: Public classes
Slot, format-arguments: Public classes
Slot, format-control: Public classes
Slot, function: Public structures
Slot, instance: Public classes
Slot, interactive-function: Public structures
Slot, name: Public structures
Slot, name: Public classes
Slot, name: Private classes
Slot, object: Public classes
Slot, operands: Public classes
Slot, operation: Public classes
Slot, package: Public classes
Slot, pathname: Public classes
Slot, possibilities: Private classes
Slot, report-function: Public structures
Slot, restart-name: Private classes
Slot, stream: Public classes
Slot, stream: Public classes
Slot, test-function: Public structures
Special Variable, *break-on-signals*: Public special variables
Special Variable, *debug-level*: Private special variables
Special Variable, *debugger-hook*: Public special variables
Special Variable, *handler-clusters*: Private special variables
Special Variable, *help-hooks*: Private special variables
Special Variable, *restart-clusters*: Private special variables
Special Variable, *skip-debugger-prefix*: Private special variables
stream: Public classes
stream: Public classes

T
test-function: Public structures

Jump to:   *  
A   D   E   F   I   N   O   P   R   S   T  

Previous: , Up: Indexes   [Contents][Index]

A.4 Data types

Jump to:   A   C   D   E   F   H   P   R   S   T   U   W  
Index Entry  Section

A
abort-failure: Private classes
arithmetic-error: Public classes
assertions.lisp: The portable-condition-system/assertions․lisp file

C
case-failure: Private classes
cell-error: Public classes
Class, abort-failure: Private classes
Class, arithmetic-error: Public classes
Class, case-failure: Private classes
Class, cell-error: Public classes
Class, condition: Public classes
Class, control-error: Public classes
Class, division-by-zero: Public classes
Class, end-of-file: Public classes
Class, error: Public classes
Class, file-error: Public classes
Class, floating-point-inexact: Public classes
Class, floating-point-invalid-operation: Public classes
Class, floating-point-overflow: Public classes
Class, floating-point-underflow: Public classes
Class, package-error: Public classes
Class, parse-error: Public classes
Class, print-not-readable: Public classes
Class, program-error: Public classes
Class, reader-error: Public classes
Class, restart-not-found: Private classes
Class, serious-condition: Public classes
Class, simple-condition: Public classes
Class, simple-error: Public classes
Class, simple-type-error: Public classes
Class, simple-warning: Public classes
Class, storage-condition: Public classes
Class, stream-error: Public classes
Class, style-warning: Public classes
Class, type-error: Public classes
Class, unbound-slot: Public classes
Class, unbound-variable: Public classes
Class, undefined-function: Public classes
Class, warning: Public classes
coerce-to-condition.lisp: The portable-condition-system/coerce-to-condition․lisp file
common-lisp+portable-condition-system: The common-lisp+portable-condition-system package
condition: Public classes
condition-hierarchy.lisp: The portable-condition-system/condition-hierarchy․lisp file
conditions.lisp: The portable-condition-system/conditions․lisp file
control-error: Public classes

D
debugger.lisp: The portable-condition-system/debugger․lisp file
division-by-zero: Public classes

E
end-of-file: Public classes
error: Public classes

F
File, assertions.lisp: The portable-condition-system/assertions․lisp file
File, coerce-to-condition.lisp: The portable-condition-system/coerce-to-condition․lisp file
File, condition-hierarchy.lisp: The portable-condition-system/condition-hierarchy․lisp file
File, conditions.lisp: The portable-condition-system/conditions․lisp file
File, debugger.lisp: The portable-condition-system/debugger․lisp file
File, handlers.lisp: The portable-condition-system/handlers․lisp file
File, package.lisp: The portable-condition-system/package․lisp file
File, portable-condition-system.asd: The portable-condition-system/portable-condition-system․asd file
File, restarts.lisp: The portable-condition-system/restarts․lisp file
File, signaling.lisp: The portable-condition-system/signaling․lisp file
file-error: Public classes
floating-point-inexact: Public classes
floating-point-invalid-operation: Public classes
floating-point-overflow: Public classes
floating-point-underflow: Public classes

H
handlers.lisp: The portable-condition-system/handlers․lisp file

P
Package, common-lisp+portable-condition-system: The common-lisp+portable-condition-system package
Package, portable-condition-system: The portable-condition-system package
Package, portable-condition-system/install: The portable-condition-system/install package
package-error: Public classes
package.lisp: The portable-condition-system/package․lisp file
parse-error: Public classes
portable-condition-system: The portable-condition-system system
portable-condition-system: The portable-condition-system package
portable-condition-system.asd: The portable-condition-system/portable-condition-system․asd file
portable-condition-system/install: The portable-condition-system/install package
print-not-readable: Public classes
program-error: Public classes

R
reader-error: Public classes
restart: Public structures
restart-not-found: Private classes
restarts.lisp: The portable-condition-system/restarts․lisp file

S
serious-condition: Public classes
signaling.lisp: The portable-condition-system/signaling․lisp file
simple-condition: Public classes
simple-error: Public classes
simple-type-error: Public classes
simple-warning: Public classes
storage-condition: Public classes
stream-error: Public classes
Structure, restart: Public structures
style-warning: Public classes
System, portable-condition-system: The portable-condition-system system

T
type-error: Public classes

U
unbound-slot: Public classes
unbound-variable: Public classes
undefined-function: Public classes

W
warning: Public classes

Jump to:   A   C   D   E   F   H   P   R   S   T   U   W