Function: xref-revert-buffer-restore-point

xref-revert-buffer-restore-point is a byte-compiled function defined in xref.el.gz.

Signature

(xref-revert-buffer-restore-point)

Documentation

Restore point on a previous item or group after reverting.

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/xref.el.gz
(defun xref-revert-buffer-restore-point ()
  "Restore point on a previous item or group after reverting."
  (let* ((item
          (when (xref--item-at-point)
            (buffer-substring-no-properties (pos-bol) (pos-eol))))
         (group
          (save-excursion
            (when (or (get-text-property (point) 'xref-group)
                      (and item (xref--search-property 'xref-group t)
                           (get-text-property (point) 'xref-group)))
              (buffer-substring-no-properties (pos-bol) (pos-eol))))))
    (when (or item group)
      (lambda ()
        (goto-char (point-min))
        (when (and group (search-forward (concat "\n" group "\n") nil t))
          (goto-char (pos-bol 0)))
        (when (and item (search-forward (concat "\n" item "\n") nil t))
          (goto-char (pos-bol 0)))))))