Function: gnus-sieve-test-token

gnus-sieve-test-token is a byte-compiled function defined in gnus-sieve.el.gz.

Signature

(gnus-sieve-test-token TOKEN)

Documentation

Convert an elisp test token to a Sieve test token.

For example:
(gnus-sieve-test-token 'address)
  => "address"

(gnus-sieve-test-token "sender")
  => "\\"sender\""

(gnus-sieve-test-token '("to" "cc"))
  => "[\\"to\", \\"cc\"]"

Source Code

;; Defined in /usr/src/emacs/lisp/gnus/gnus-sieve.el.gz
;; FIXME: do proper quoting
(defun gnus-sieve-test-token (token)
  "Convert an elisp test token to a Sieve test token.

For example:
\(gnus-sieve-test-token \\='address)
  => \"address\"

\(gnus-sieve-test-token \"sender\")
  => \"\\\"sender\\\"\"

\(gnus-sieve-test-token \\='(\"to\" \"cc\"))
  => \"[\\\"to\\\", \\\"cc\\\"]\""
  (cond
   ((symbolp token)            ;; Keyword
    (symbol-name token))

   ((stringp token)            ;; String
    (concat "\"" token "\""))

   ((and (listp token)         ;; String list
	 (stringp (car token)))
    (gnus-sieve-string-list token))

   ((and (listp token)         ;; Test list
	 (listp (car token)))
    (gnus-sieve-test-list token))))