Function: clojure--make-form--cmacro
clojure--make-form--cmacro is a function defined in clojure-mode.el.
Signature
(clojure--make-form--cmacro CL-WHOLE &cl-quote &key TYPE START END CHILDREN NAME NAMESPACE META-START)
Documentation
compiler-macro for inlining clojure--make-form.
Source Code
;; Defined in ~/.emacs.d/elpa/clojure-mode-20261103.1226/clojure-mode.el
;; Closure converted to defun by helpful.
(defun clojure--make-form--cmacro
(cl-whole &rest --cl-rest--)
"compiler-macro for inlining `clojure--make-form'.\n\n\\(fn CL-WHOLE &cl-quote &key TYPE START END CHILDREN NAME NAMESPACE META-START)"
(let*
((type
(car
(cdr
(plist-member --cl-rest-- ':type))))
(start
(car
(cdr
(plist-member --cl-rest-- ':start))))
(end
(car
(cdr
(plist-member --cl-rest-- ':end))))
(children
(car
(cdr
(plist-member --cl-rest-- ':children))))
(name
(car
(cdr
(plist-member --cl-rest-- ':name))))
(namespace
(car
(cdr
(plist-member --cl-rest-- ':namespace))))
(meta-start
(car
(cdr
(plist-member --cl-rest-- ':meta-start)))))
(progn
(let
((--cl-keys-- --cl-rest--))
(while --cl-keys--
(cond
((memq
(car --cl-keys--)
'(:type :start :end :children :name :namespace :meta-start :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 (:type :start :end :children :name :namespace :meta-start)"
(car --cl-keys--))))))
(cl-block clojure--make-form--cmacro
(cl--defsubst-expand
'(type start end children name namespace meta-start)
'(cl-block clojure--make-form
(record 'clojure--form type start end children name namespace meta-start))
nil cl-whole nil type start end children name namespace meta-start)))))