Function: gnus-group-update-eval-form
gnus-group-update-eval-form is a byte-compiled function defined in
gnus-group.el.gz.
Signature
(gnus-group-update-eval-form GROUP LIST)
Documentation
Eval car of each element of LIST, and return the first that return t.
Some value are bound so the form can use them.
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/gnus-group.el.gz
(defun gnus-group-update-eval-form (group list)
"Eval `car' of each element of LIST, and return the first that return t.
Some value are bound so the form can use them."
(when list
(let* ((entry (gnus-group-entry group))
(active (gnus-active group))
(info (nth 1 entry))
(method (inline (gnus-server-get-method
group (gnus-info-method info))))
(marked (gnus-info-marks info))
(env
(list
(cons 'group group)
(cons 'unread (if (numberp (car entry)) (car entry) 0))
(cons 'method method)
(cons 'total (if active (1+ (- (cdr active) (car active))) 0))
(cons 'mailp (apply
#'append
(mapcar
(lambda (x)
(memq x (assoc
(symbol-name
(car (or method gnus-select-method)))
gnus-valid-select-methods)))
'(mail post-mail))))
(cons 'level (or (gnus-info-level info) gnus-level-killed))
(cons 'score (or (gnus-info-score info) 0))
(cons 'ticked (range-length (cdr (assq 'tick marked))))
(cons 'group-age (gnus-group-timestamp-delta group)))))
(while (and list
(not (eval (caar list) env)))
(setq list (cdr list)))
list)))