Function: elisp-scope-named-let
elisp-scope-named-let is a byte-compiled function defined in
elisp-scope.el.gz.
Signature
(elisp-scope-named-let NAME BINDINGS BODY &optional OUTSPEC)
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/elisp-scope.el.gz
(defun elisp-scope-named-let (name bindings body &optional outspec)
(let ((bare (elisp-scope--sym-bare name))
(beg (elisp-scope--sym-pos name)))
(when beg
(elisp-scope--report 'function beg bare beg))
(dolist (binding bindings)
(let* ((sym (car (ensure-list binding)))
(beg (symbol-with-pos-pos sym))
(bare (bare-symbol sym)))
(when beg (elisp-scope--binding bare beg))
(elisp-scope-1 (cadr binding))))
(let ((l elisp-scope-local-bindings))
(dolist (binding bindings)
(when-let* ((sym (car (ensure-list binding)))
(bare (elisp-scope--sym-bare sym)))
(setq l (elisp-scope--local-new bare (elisp-scope--sym-pos sym) l))))
(let ((pos (or beg (cons 'gen (incf elisp-scope--counter)))))
(elisp-scope-with-local-definition bare
(elisp-scope--local-function-analyzer pos)
(let ((elisp-scope-local-bindings l)) (elisp-scope-n body outspec)))))))