Function: nnvirtual-reverse-map-sequence
nnvirtual-reverse-map-sequence is a byte-compiled function defined in
nnvirtual.el.gz.
Signature
(nnvirtual-reverse-map-sequence GROUP ARTICLES)
Documentation
Return list of virtual article numbers for all ARTICLES in GROUP.
The ARTICLES should be sorted, and can be a compressed sequence. If any of the article numbers has no corresponding virtual article, then it is left out of the result.
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/nnvirtual.el.gz
(defsubst nnvirtual-reverse-map-sequence (group articles)
"Return list of virtual article numbers for all ARTICLES in GROUP.
The ARTICLES should be sorted, and can be a compressed sequence.
If any of the article numbers has no corresponding virtual article,
then it is left out of the result."
(when (numberp (cdr-safe articles))
(setq articles (list articles)))
(let (result a i j new-a)
(while (setq a (pop articles))
(if (atom a)
(setq i a
j a)
(setq i (car a)
j (cdr a)))
(while (<= i j)
;; If this is slow, you can optimize by moving article checking
;; into here. You don't have to recompute the group-pos,
;; nor scan the table every time.
(when (setq new-a (nnvirtual-reverse-map-article group i))
(push new-a result))
(setq i (1+ i))))
(nreverse result)))