Function: edebug-step-out
edebug-step-out is an interactive and byte-compiled function defined
in edebug.el.gz.
Signature
(edebug-step-out)
Documentation
Proceed from the current point to the end of the containing sexp.
If there is no containing sexp that is not the top level defun, go to the end of the last sexp, or if that is the same point, then step.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/edebug.el.gz
(defun edebug-step-out ()
"Proceed from the current point to the end of the containing sexp.
If there is no containing sexp that is not the top level defun,
go to the end of the last sexp, or if that is the same point, then step."
(interactive)
(condition-case nil
(let ((parse-sexp-ignore-comments t))
(up-list 1)
(save-excursion
;; Is there still a containing expression?
(up-list 1))
(edebug-go-mode t))
(error
;; At top level - 1, so first check if there are more sexps at this level.
(let ((start-point (point)))
;; (up-list 1)
(down-list -1)
(if (= (point) start-point)
(edebug-step-mode) ; No more at this level, so step.
(edebug-go-mode t)
)))))