Function: cl-print--struct-contents
cl-print--struct-contents is a byte-compiled function defined in
cl-print.el.gz.
Signature
(cl-print--struct-contents OBJECT START STREAM)
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/cl-print.el.gz
(defun cl-print--struct-contents (object start stream)
(let* ((class (cl-find-class (type-of object)))
(slots (cl--struct-class-slots class))
(len (length slots))
(limit (if (natnump print-length)
(min (+ start print-length) len) len))
(i start))
(while (< i limit)
(let ((slot (aref slots i)))
(unless (and (= i start) (> i 0)) (princ " " stream))
(princ ":" stream)
(princ (cl--slot-descriptor-name slot) stream)
(princ " " stream)
(cl-print-object (aref object (1+ i)) stream))
(incf i))
(when (< limit len)
(princ " " stream)
(cl-print-insert-ellipsis object limit stream))))