5.1.14 Changes to the inspector

5.1.14.2 Inspect

The functioninspect is an interactive version ofdescribe. It displays objects in a similar way todescribe. Entering the teletype inspector causes a new level of the top loop to be entered with a special prompt indicating that the inspector has been entered and showing the current inspector level.

In the modified top loop, if you enter a slot name, that slot is inspected and the current object is pushed onto an internal stack of previously inspected objects. The special variables$,$$, and$$$ are bound to the top three objects on the inspector stack. Note that the global variable* is still bound to the last object printed out, which is most cases is the same thing as the object currently being inspected.

The following keywords are also treated specially by the inspector.
Inspector keywords
:dDisplay current object.
:dmDisplay more of current object.
:i mRecursively invoke a new inspector. m is an object to inspect.
:qQuit current inspector.
:s n vSets slot n to value v.
:shShow inspector stack.
:u intUndo last inspection. If you supply an optional integer argument, int, then the last int inspections are undone.
:udUndo last inspection and redisplay current object.
:mChange the inspection mode .

The variables*inspect-print-level* and*inspect-print-length* are similar to*describe-print-level* and*describe-print-length* (see above).

:dm displays more slots of the current object. If the object has more thansys::*describe-length* slots, then the first*describe-length* will be printed, followed by an ellipsis and then

(:dm for more)

If you type:dm at the prompt, the next*describe-length* slots are displayed. This only works on the last inspected object, so if you recursively inspect a slot and come back,:dm does not do anything useful. Typing:d lets you view the object again.

:ud is equivalent to typing:u followed by:d.

A new variable,*inspect-recursively*, determines whether or not to inspect values of forms evaluated in the inspector.


Liquid Common Lisp 5.0 Release and Installation Notes - 9 JUN 1997

Generated with Harlequin WebMaker