Function: nnmaildir--grp-add-art
nnmaildir--grp-add-art is a byte-compiled function defined in
nnmaildir.el.gz.
Signature
(nnmaildir--grp-add-art SERVER GROUP ARTICLE)
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/nnmaildir.el.gz
(defun nnmaildir--grp-add-art (server group article)
(let ((nov (nnmaildir--update-nov server group article))
count num min nlist nlist-cdr insert-nlist)
(when nov
(setq count (1+ (nnmaildir--grp-count group))
num (nnmaildir--art-num article)
min (if (= count 1) num
(min num (nnmaildir--grp-min group)))
nlist (nnmaildir--grp-nlist group))
(if (or (null nlist) (> num (caar nlist)))
(setq nlist (cons (cons num article) nlist))
(setq insert-nlist t
nlist-cdr (cdr nlist))
(while (and nlist-cdr (< num (caar nlist-cdr)))
(setq nlist nlist-cdr
nlist-cdr (cdr nlist))))
(let ((inhibit-quit t))
(setf (nnmaildir--grp-count group) count)
(setf (nnmaildir--grp-min group) min)
(if insert-nlist
(setcdr nlist (cons (cons num article) nlist-cdr))
(setf (nnmaildir--grp-nlist group) nlist))
(puthash (nnmaildir--art-prefix article)
article
(nnmaildir--grp-flist group))
(puthash (nnmaildir--art-msgid article)
article
(nnmaildir--grp-mlist group))
(puthash (nnmaildir--grp-name group)
group
(nnmaildir--srv-groups server)))
(nnmaildir--cache-nov group article nov)
t)))