Function: dape-until

dape-until is an interactive and natively compiled function defined in dape.el.

Signature

(dape-until CONN)

Documentation

Run until point.

CONN is inferred for interactive invocations.

Key Bindings

ctl-x-map C-a u dape-global-map u global-map C-x C-a u help-quick-use-map C-x C-a u

Source Code

;; Defined in /nix/store/1fiaif8pifqj2jh65rbg3fkhg3i56q42-emacs-packages-deps/share/emacs/site-lisp/elpa/dape-0.27.1/dape.el
;;; Run until point

(defun dape-until (conn)
  "Run until point.
CONN is inferred for interactive invocations."
  (interactive (list (or (dape--live-connection 'stopped t)
                         (dape--live-connection 'parent))))
  ;; Ensure that `dape-until' state is reset
  (add-hook 'dape-active-mode-hook #'dape--until-reset)
  (add-hook 'dape-stopped-hook #'dape--until-reset)
  (if (cl-member 'until (dape--breakpoints-at-point)
                 :key #'dape--source-breakpoint-type)
      (dape-breakpoint-remove-at-point)
    (let (;; Block to ensure breakpoints changes before continue
          (dape--request-blocking t))
      ;; Disable all non disabled breakpoints temporarily
      (cl-loop for breakpoint in dape--breakpoints
               unless (or (not (dape--source-breakpoint-p breakpoint))
                          (dape--breakpoint-disabled breakpoint)
                          (eq (dape--source-breakpoint-type breakpoint) 'until))
               do (dape--breakpoint-disable breakpoint 'until)
               finally do (dape--breakpoint-notify-all))
      (dape--breakpoint-place 'until)
      (when (dape--stopped-threads conn)
        (dape-continue conn)))))