Function: elisp-scope-flet

elisp-scope-flet is a byte-compiled function defined in elisp-scope.el.gz.

Signature

(elisp-scope-flet DEFS BODY OUTSPEC)

Source Code

;; Defined in /usr/src/emacs/lisp/emacs-lisp/elisp-scope.el.gz
(defun elisp-scope-flet (defs body outspec)
  (if defs
      (let* ((def (car defs))
             (func (car def))
             (exps (cdr def))
             (beg (elisp-scope--sym-pos func))
             (bare (bare-symbol func)))
        (when beg
          ;; TODO: Use a bespoke 'local-function-definition' role.
          (elisp-scope--report 'function beg bare beg))
        (if (cdr exps)
            ;; def is (FUNC ARGLIST BODY...)
            (elisp-scope-cl-lambda (car exps) (cdr exps))
          ;; def is (FUNC EXP)
          (elisp-scope-1 (car exps)))
        (let ((pos (or beg (cons 'gen (incf elisp-scope--counter)))))
          (elisp-scope-with-local-definition bare
              (elisp-scope--local-function-analyzer pos)
            (elisp-scope-flet (cdr defs) body outspec))))
    (elisp-scope-n body outspec)))