Function: comp-args-to-lambda-list
comp-args-to-lambda-list is a byte-compiled function defined in
comp.el.gz.
Signature
(comp-args-to-lambda-list ARGS)
Documentation
Return a lambda list for ARGS.
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/comp.el.gz
;;; Final pass specific code.
(defun comp-args-to-lambda-list (args)
"Return a lambda list for ARGS."
(cl-loop
with res
repeat (comp-args-base-min args)
do (push t res)
finally
(if (comp-args-p args)
(cl-loop
with n = (- (comp-args-max args) (comp-args-min args))
initially (unless (zerop n)
(push '&optional res))
repeat n
do (push t res))
(cl-loop
with n = (- (comp-nargs-nonrest args) (comp-nargs-min args))
initially (unless (zerop n)
(push '&optional res))
repeat n
do (push t res)
finally (when (comp-nargs-rest args)
(push '&rest res)
(push 't res))))
(cl-return (reverse res))))