Add xref-match-item, and use it
commit5330a45ebff0214cc5c5d123e7cc68f00f68ff39
authorDmitry Gutov <dgutov@yandex.ru>
Mon, 20 Jul 2015 01:32:58 +0000 (20 04:32 +0300)
committerDmitry Gutov <dgutov@yandex.ru>
Mon, 20 Jul 2015 01:32:58 +0000 (20 04:32 +0300)
tree5a22c9baffc0fabf48c3c73fce8b377a1d9df844
parent10ac9dbdcf2973bd70ea63aa79a9f3ad7dd9ff5a
Add xref-match-item, and use it

* lisp/progmodes/xref.el (xref-match-bounds): New generic function.
(xref-file-location): Add reader for the column slot.
(xref-match-item): New class.
(xref-match-bounds): A method implementation for it.
(xref-make-match): New constructor function.
(xref--current-item): New private variable.
(xref-pulse-momentarily): Use it.
(xref--pop-to-location): Change the first argument to an xref
item, instead of location, bind xref--current-item.
Update all callers.
(xref-next-line, xref-prev-line, xref--next-error-function)
(xref--mouse-2): Look for the property `xref-item',
instead of `xref-location'.
(xref--item-at-point): Likewise.  This function replaces
`xref-location-at-point'.  Update all callers.
(xref--insert-xrefs): Add the `xref-item' text property, instead
of `xref-location'.
(xref--collect-match): Use xref-make-match.
lisp/progmodes/xref.el