"The inspector displays a tabular view of an object and adds navigation and editing features. Inspector words are found in the " { $vocab-link "inspector" } " vocabulary."
$nl
"Starting the inspector:"
{ $subsection inspect }
"The inspector supports a number of commands which operate on the most recently inspected object:"
{ $subsection &push }
{ $subsection &back }
{ $subsection &at }
{ $subsection &put }
{ $subsection &add }
{ $subsection &rename }
{ $subsection &delete }
"A variable holding the current object:"
{ $subsection me }
"A variable holding inspector history:"
{ $subsection inspector-stack }
"A customization hook:"
{ $subsection inspector-hook }
"A description of an object can be printed without starting the inspector:"
{ $notes "This word is a factor of " { $link describe } " and " { $link inspect } "." } ;
HELP:inspector-stack
{ $var-description "If the inspector is running, this variable holds previously-inspected objects." } ;
HELP:&push
{ $values { "obj"object } }
{ $description "If the inspector is running, outputs the object currently being inspected." } ;
HELP:inspector
{ $values { "obj"object } }
{ $description "Starts a new inspector and prints a brief help message. If an inspector is already running, this starts a nested inspector. An alternative word that reuses the current inspector instance is " { $link inspect } "." } ;
HELP:inspect
{ $values { "obj"object } }
{ $description "If an inspector is already running, displays the slots of the object in the current inspector. If an inspector is not running, starts a new inspector." } ;
HELP:&at
{ $values { "n""a non-negative integer" } }
{ $description "Inspects the " { $snippet "n" } "th slot of the current object. Use " { $link &back } " to return." } ;
"The default implementation calls " { $link describe } " which outputs on " { $link output-stream } ", but the graphical listener sets this variable so that calling " { $link inspect } " in the UI opens the graphical inspector." } ;