Function: mh-thread-make-message--cmacro
mh-thread-make-message--cmacro is a function defined in
mh-thread.el.gz.
Signature
(mh-thread-make-message--cmacro CL-WHOLE &cl-quote &key ID REFERENCES SUBJECT SUBJECT-RE-P)
Documentation
compiler-macro for inlining mh-thread-make-message.
Source Code
;; Defined in /usr/src/emacs/lisp/mh-e/mh-thread.el.gz
;; Closure converted to defun by helpful.
(defun mh-thread-make-message--cmacro
(cl-whole &rest --cl-rest--)
"compiler-macro for inlining `mh-thread-make-message'.\n\n\\(fn CL-WHOLE &cl-quote &key ID REFERENCES SUBJECT SUBJECT-RE-P)"
(let*
((id
(car
(cdr
(plist-member --cl-rest-- ':id))))
(references
(car
(cdr
(plist-member --cl-rest-- ':references))))
(subject
(car
(cdr
(or
(plist-member --cl-rest-- ':subject)
'(nil "")))))
(subject-re-p
(car
(cdr
(plist-member --cl-rest-- ':subject-re-p)))))
(progn
(let
((--cl-keys-- --cl-rest--))
(while --cl-keys--
(cond
((memq
(car --cl-keys--)
'(:id :references :subject :subject-re-p :allow-other-keys))
(unless
(cdr --cl-keys--)
(error "Missing argument for %s"
(car --cl-keys--)))
(setq --cl-keys--
(cdr
(cdr --cl-keys--))))
((car
(cdr
(memq ':allow-other-keys --cl-rest--)))
(setq --cl-keys-- nil))
(t
(error "Keyword argument %s not one of (:id :references :subject :subject-re-p)"
(car --cl-keys--))))))
(cl-block mh-thread-make-message--cmacro
(cl--defsubst-expand
'(id references subject subject-re-p)
'(cl-block mh-thread-make-message
(record 'mh-thread-message id references subject subject-re-p))
nil cl-whole nil id references subject subject-re-p)))))