Function: eshell-worker-create--cmacro
eshell-worker-create--cmacro is a function defined in
esh-worker.el.gz.
Signature
(eshell-worker-create--cmacro CL-WHOLE &cl-quote &key STATUS ESHELL-BUFFER OUTPUT-HANDLES ENSURE-NEWLINE-P)
Documentation
compiler-macro for eshell-worker-create.
Source Code
;; Defined in /usr/src/emacs/lisp/eshell/esh-worker.el.gz
;; Could not find source code, showing raw function object.
#[(cl-whole &rest --cl-rest--)
((let*
((status
(car
(cdr (or (plist-member --cl-rest-- ':status) '(nil 'run)))))
(eshell-buffer
(car
(cdr
(or (plist-member --cl-rest-- ':eshell-buffer)
'(nil
(progn
(cl-assert (derived-mode-p 'eshell-mode))
(current-buffer)))))))
(output-handles
(car
(cdr
(or (plist-member --cl-rest-- ':output-handles)
'(nil (eshell-duplicate-handles eshell-current-handles))))))
(ensure-newline-p
(car
(cdr
(or (plist-member --cl-rest-- ':ensure-newline-p) '(nil t))))))
(progn
(let ((--cl-keys-- --cl-rest--))
(while --cl-keys--
(cond
((memq (car --cl-keys--)
'(:status :eshell-buffer :output-handles
:ensure-newline-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 (:status :eshell-buffer :output-handles :ensure-newline-p)"
(car --cl-keys--))))))
(cl-block eshell-worker-create--cmacro
(cl--defsubst-expand
'(status eshell-buffer output-handles ensure-newline-p)
'(cl-block eshell-worker-create
(record 'eshell-worker status eshell-buffer
output-handles ensure-newline-p))
nil cl-whole nil status eshell-buffer output-handles
ensure-newline-p)))))
(cl-struct-eshell-worker-tags) nil
"compiler-macro for `eshell-worker-create'.\n\n(fn CL-WHOLE &cl-quote &key STATUS ESHELL-BUFFER OUTPUT-HANDLES ENSURE-NEWLINE-P)"]