Function: debugger-frame-number

debugger-frame-number is a byte-compiled function defined in debug.el.gz.

Signature

(debugger-frame-number &optional SKIP-BASE)

Documentation

Return number of frames in backtrace before the one point points at.

Source Code

;; Defined in /usr/src/emacs/lisp/emacs-lisp/debug.el.gz
(defun debugger-frame-number (&optional skip-base)
  "Return number of frames in backtrace before the one point points at."
  (let ((index (backtrace-get-index))
        (count 0))
    (unless index
      (error "This line is not a function call"))
    (unless skip-base
        (while (not (eq (cadr (backtrace-frame count)) 'debug))
          (setq count (1+ count)))
        ;; Skip debug--implement-debug-on-entry frame.
        (when (eq 'debug--implement-debug-on-entry
                  (cadr (backtrace-frame (1+ count))))
          (setq count (+ 2 count))))
    (+ count index)))