Function: gnus-score-advanced
gnus-score-advanced is an autoloaded and byte-compiled function
defined in gnus-logic.el.gz.
Signature
(gnus-score-advanced RULE &optional TRACE)
Documentation
Apply advanced scoring RULE to all the articles in the current group.
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/gnus-logic.el.gz
(defun gnus-score-advanced (rule &optional trace)
"Apply advanced scoring RULE to all the articles in the current group."
(let (new-score score multiple)
(dolist (gnus-advanced-headers gnus-newsgroup-headers)
(when (setq multiple (gnus-advanced-score-rule (car rule)))
(setq new-score (or (nth 1 rule)
gnus-score-interactive-default-score))
(when (numberp multiple)
(setq new-score (* multiple new-score)))
;; This rule was successful, so we add the score to this
;; article.
(if (setq score (assq (mail-header-number gnus-advanced-headers)
gnus-newsgroup-scored))
(setcdr score
(+ (cdr score) new-score))
(push (cons (mail-header-number gnus-advanced-headers)
new-score)
gnus-newsgroup-scored)
(when trace
(push (cons "A file" rule)
;; Must be synced with `gnus-score-edit-file-at-point'.
gnus-score-trace)))))))