Function: dape--object-to-marker
dape--object-to-marker is a natively compiled function defined in
dape.el.
Signature
(dape--object-to-marker CONN PLIST)
Documentation
Return marker created from PLIST and CONN config.
Marker is created from PLIST keys :source and :line.
Note requires dape--source-ensure if source is by reference.
Source Code
;; Defined in /nix/store/1fiaif8pifqj2jh65rbg3fkhg3i56q42-emacs-packages-deps/share/emacs/site-lisp/elpa/dape-0.27.1/dape.el
(defun dape--object-to-marker (conn plist)
"Return marker created from PLIST and CONN config.
Marker is created from PLIST keys :source and :line.
Note requires `dape--source-ensure' if source is by reference."
(when-let* ((source (plist-get plist :source))
(line (or (plist-get plist :line) 1))
(buffer (or
;; Take buffer by source reference
(when-let* ((reference (plist-get source :sourceReference))
(buffer (plist-get (dape--source-buffers
(dape--root-of conn))
reference))
((buffer-live-p buffer)))
buffer)
;; Take buffer by path
(when-let* ((remote-path (plist-get source :path))
(filename
(dape--file-name-local conn remote-path))
((file-exists-p filename)))
(find-file-noselect filename t)))))
(dape--with-line buffer line
(when-let* ((column (plist-get plist :column)))
(when (> column 0)
(forward-char (1- column))))
(point-marker))))