Function: byte-run--strip-vector/record
byte-run--strip-vector/record is a byte-compiled function defined in
byte-run.el.gz.
Signature
(byte-run--strip-vector/record ARG)
Documentation
Strip the positions from symbols with position in the vector/record ARG.
This is done by destructively modifying ARG. Return ARG.
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/byte-run.el.gz
(defalias 'byte-run--strip-vector/record
#'(lambda (arg)
"Strip the positions from symbols with position in the vector/record ARG.
This is done by destructively modifying ARG. Return ARG."
(unless (gethash arg byte-run--ssp-seen)
(let ((len (length arg))
(i 0)
elt)
(puthash arg t byte-run--ssp-seen)
(while (< i len)
(setq elt (aref arg i))
(cond
((symbol-with-pos-p elt)
(aset arg i elt))
((consp elt)
(byte-run--strip-list elt))
((or (vectorp elt) (recordp elt))
(byte-run--strip-vector/record elt)))
(setq i (1+ i)))))
arg))