Function: nnmaildir--expired-article
nnmaildir--expired-article is a byte-compiled function defined in
nnmaildir.el.gz.
Signature
(nnmaildir--expired-article GROUP ARTICLE)
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/nnmaildir.el.gz
(defun nnmaildir--expired-article (group article)
(setf (nnmaildir--art-nov article) nil)
(let ((flist (nnmaildir--grp-flist group))
(mlist (nnmaildir--grp-mlist group))
(min (nnmaildir--grp-min group))
(count (1- (nnmaildir--grp-count group)))
(prefix (nnmaildir--art-prefix article))
(msgid (nnmaildir--art-msgid article))
(new-nlist nil)
(nlist-pre '(nil . nil))
nlist-post num)
(unless (zerop count)
(setq nlist-post (nnmaildir--grp-nlist group)
num (nnmaildir--art-num article))
(if (eq num (caar nlist-post))
(setq new-nlist (cdr nlist-post))
(setq new-nlist nlist-post
nlist-pre nlist-post
nlist-post (cdr nlist-post))
(while (/= num (caar nlist-post))
(setq nlist-pre nlist-post
nlist-post (cdr nlist-post)))
(setq nlist-post (cdr nlist-post))
(if (eq num min)
(setq min (caar nlist-pre)))))
(let ((inhibit-quit t))
(setf (nnmaildir--grp-min group) min)
(setf (nnmaildir--grp-count group) count)
(setf (nnmaildir--grp-nlist group) new-nlist)
(setcdr nlist-pre nlist-post)
(remhash prefix flist)
(remhash msgid mlist))))