]> git.eshelyaron.com Git - emacs.git/commitdiff
Improve Xref documentation
authorDmitry Gutov <dgutov@yandex.ru>
Fri, 24 Dec 2021 01:24:52 +0000 (03:24 +0200)
committerDmitry Gutov <dgutov@yandex.ru>
Fri, 24 Dec 2021 01:25:22 +0000 (03:25 +0200)
* lisp/progmodes/xref.el (xref-item): Add docstring for 'summary'.
Fix typo in the header Commentary.

lisp/progmodes/xref.el

index 492be9a104df7479d22aa79d0649f1f1c20735ae..fd59a7b98c8db9f319d0079cc4bdd65f1195d18e 100644 (file)
@@ -44,7 +44,7 @@
 ;;
 ;; The last three methods operate with "xref" and "location" values.
 ;;
-;; One would usually call `make-xref' and `xref-make-file-location',
+;; One would usually call `xref-make' and `xref-make-file-location',
 ;; `xref-make-buffer-location' or `xref-make-bogus-location' to create
 ;; them.  More generally, a location must be an instance of a type for
 ;; which methods `xref-location-group' and `xref-location-marker' are
@@ -199,7 +199,19 @@ is not known."
                (:constructor xref-make (summary location))
                (:noinline t))
   "An xref item describes a reference to a location somewhere."
-  summary location)
+  (summary nil :documentation "String which describes the location.
+
+When `xref-location-line' returns non-nil (a number), the summary
+is implied to be the contents of a file or buffer line containing
+the location.  When multiple locations in a row report the same
+line, in the same group (corresponding to the case of multiple
+locations on one line), the summaries are concatenated in the
+Xref output buffer.  Consequently, any code that creates xref
+values should take care to slice the summary values when several
+locations point to the same line.
+
+This behavior is new in Emacs 28.")
+  location)
 
 (cl-defstruct (xref-match-item
                (:include xref-item)