Function: message--name-table
message--name-table is a byte-compiled function defined in
message.el.gz.
Signature
(message--name-table ORIG-STRING)
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/message.el.gz
(defun message--name-table (orig-string)
(let ((orig-words (split-string orig-string "[ \t]+"))
eudc-responses
bbdb-responses)
(lambda (string pred action)
(pcase action
('metadata '(metadata (category . email)))
('lambda t)
((or 'nil 't)
(when orig-words
(when (and (memq 'eudc message-expand-name-databases)
(boundp 'eudc-protocol)
eudc-protocol)
(setq eudc-responses (eudc-query-with-words orig-words)))
(when (memq 'bbdb message-expand-name-databases)
(setq bbdb-responses (message--bbdb-query-with-words orig-words)))
(ecomplete-setup)
(setq orig-words nil))
(let ((candidates
;; FIXME: Add `expand-abbrev'!
(append (all-completions string eudc-responses pred)
(all-completions string bbdb-responses pred)
(when (and (bound-and-true-p ecomplete-database)
(fboundp 'ecomplete-completion-table))
(all-completions string
(ecomplete-completion-table 'mail)
pred)))))
(if action candidates (try-completion string candidates))))))))