10.12 Predicate Specifiers

Some Gnus variables are predicate specifiers. This is a special form that allows flexible specification of predicates without having to type all that much.

These specifiers are lists consisting of functions, symbols and lists.

Here’s an example:

(or gnus-article-unseen-p
    gnus-article-unread-p)

The available symbols are or, and and not. The functions all take one parameter.

Internally, Gnus calls gnus-make-predicate on these specifiers to create a function that can be called. This input parameter to this function will be passed along to all the functions in the predicate specifier.