Function: nnvirtual-reverse-map-article

nnvirtual-reverse-map-article is a byte-compiled function defined in nnvirtual.el.gz.

Signature

(nnvirtual-reverse-map-article GROUP ARTICLE)

Documentation

Return virtual article number corresponding to component GROUP and ARTICLE.

Source Code

;; Defined in /usr/src/emacs/lisp/gnus/nnvirtual.el.gz
(defun nnvirtual-reverse-map-article (group article)
  "Return virtual article number corresponding to component GROUP and ARTICLE."
  (when (numberp article)
    (let ((table nnvirtual-mapping-table)
	  (group-pos 0)
	  entry)
      (while (not (string= group (car (aref nnvirtual-mapping-offsets
					    group-pos))))
	(setq group-pos (1+ group-pos)))
      (setq article (- article (cdr (aref nnvirtual-mapping-offsets
					  group-pos))))
      (while (and table
		  (> article (aref (car table) 0)))
	(setq table (cdr table)))
      (setq entry (car table))
      (when (and entry
		 (> article 0)
		 (< group-pos (aref entry 2))) ; article not out of range below
	(+ (aref entry 4)
	   group-pos
	   (* (- article (aref entry 1))
	      (aref entry 2))
	   1))
      )))