Function: comp--make-lambda-list-from-subr

comp--make-lambda-list-from-subr is a byte-compiled function defined in comp.el.gz.

Signature

(comp--make-lambda-list-from-subr SUBR)

Documentation

Given SUBR return the equivalent lambda-list.

Source Code

;; Defined in /usr/src/emacs/lisp/emacs-lisp/comp.el.gz
;; Primitive function advice machinery

(defun comp--make-lambda-list-from-subr (subr)
  "Given SUBR return the equivalent lambda-list."
  (pcase-let ((`(,min . ,max) (subr-arity subr))
              (lambda-list '()))
    (cl-loop repeat min
             do (push (gensym "arg") lambda-list))
    (if (numberp max)
        (cl-loop
         initially (push '&optional lambda-list)
         repeat (- max min)
         do (push (gensym "arg") lambda-list))
      (push '&rest lambda-list)
      (push (gensym "arg") lambda-list))
    (reverse lambda-list)))