restart-case restartable-form { clause } => result *
clause ::= ( case-name lambda-list [[:interactive interactive-expression | :report report-expression | :test test-expression ]] declaration * form *)
The macro
restart-case
behaves as specified in the ANSI Common Lisp standard.
In addition to that specification,
report-expression
may be a form whose
car
is
list
. Such a form is evaluated when the restart is set up and is expected to return a list of a format string and format arguments. When the restart is asked to report, this is done by calling
format
on the stream, the format string and the format arguments. This is more efficient than specifying an equivalent function, because no function object is created.