")
(defun %inspect (*inspected* s)
- (named-let redisplay () ; "lambda, the ultimate GOTO":-|
+ (named-let redisplay () ; "LAMBDA, the ultimate GOTO":-|
(multiple-value-bind (description named-p elements)
(inspected-parts *inspected*)
(tty-display-inspected-parts description named-p elements s)
;; thing to do (as opposed to e.g. handling it as U), we
;; could document it. Meanwhile, it seems more Unix-y to
;; do this than to signal an error.
+ (/show0 "THROWing QUIT-INSPECT for EOF")
(throw 'quit-inspect nil))
(integer
(let ((elements-length (length elements)))
(format s "~%The object contains nothing to inspect.~%")
(return-from %inspect (reread)))
(t
- (format s "~%Enter a valid index (~:[0-~D~;0~]).~%"
+ (format s "~%Enter a valid index (~:[0-~W~;0~]).~%"
(= elements-length 1) (1- elements-length))
(return-from %inspect (reread))))))
(symbol
(case (find-symbol (symbol-name command) *keyword-package*)
((:q :e)
+ (/show0 "THROWing QUIT-INSPECT for :Q or :E")
(throw 'quit-inspect nil))
(:u
(return-from %inspect))
(inspected-structure-elements object)))
(defmethod inspected-parts ((object function))
- (let* ((type (sb-kernel:get-type object))
+ (let* ((type (sb-kernel:widetag-of object))
(object (if (= type sb-vm:closure-header-widetag)
(sb-kernel:%closure-fun object)
object)))
(defmethod inspected-parts ((object vector))
(values (format nil
- "The object is a ~:[~;displaced ~]VECTOR of length ~D.~%"
+ "The object is a ~:[~;displaced ~]VECTOR of length ~W.~%"
(and (array-header-p object)
(%array-displaced-p object))
(length object))
(multiple-value-bind (q r) (floor index dim)
(setq index q)
(push r list)))
- (format nil "[~D~{,~D~}]" (car list) (cdr list)))))
+ (format nil "[~W~{,~W~}]" (car list) (cdr list)))))
(defmethod inspected-parts ((object array))
(let* ((length (min (array-total-size object) *inspect-length*))