* lisp/subr.el (definition-prefixes): Expand docstring

* lisp/emacs-lisp/autoload.el (autoload--split-prefixes):
Remove unused function.
This commit is contained in:
Stefan Monnier 2016-05-27 12:33:57 -04:00
parent 01f375386d
commit 84f431224c
3 changed files with 21 additions and 10 deletions

View file

@ -385,6 +385,10 @@ function 'check-declare-errmsg' has been removed.
* Lisp Changes in Emacs 25.2
** New var `definition-prefixes' is a hashtable mapping prefixes to the
files where corresponding definitions can be found. This can be used
to fetch definitions that are not yet loaded, for example for `C-h f'.
** New var syntax-ppss-table to control the syntax-table used in syntax-ppss.
+++

View file

@ -513,15 +513,6 @@ Return non-nil in the case where no autoloads were added at point."
(t (setcdr cell (cons tail (cdr cell)))))))
prefixes))
(defun autoload--split-prefixes (prefixes)
(apply #'nconc
(mapcar (lambda (cell)
(let ((prefix (car cell)))
(mapcar (lambda (cell)
(cons (concat prefix (car cell)) (cdr cell)))
(autoload--split-prefixes-1 (cdr cell)))))
prefixes)))
(defvar autoload-compute-prefixes t
"If non-nil, autoload will add code to register the prefixes used in a file.
Standard prefixes won't be registered anyway. I.e. if a file \"foo.el\" defines
@ -538,6 +529,13 @@ cost more memory use).")
(defvar autoload-popular-prefixes nil)
(defun autoload--make-defs-autoload (defs file)
;; FIXME: avoid redundant entries. E.g. opascal currently has
;; "opascal-" "opascal--literal-start-re" "opascal--syntax-propertize"
;; where only the first one should be kept.
;; FIXME: Avoid keeping too-long-prefixes. E.g. ob-scheme currently has
;; "org-babel-scheme-" "org-babel-default-header-args:scheme"
;; "org-babel-expand-body:scheme" "org-babel-execute:scheme".
;; Remove the defs that obey the rule that file foo.el (or
;; foo-mode.el) uses "foo-" as prefix.
;; FIXME: help--symbol-completion-table still doesn't know how to use

View file

@ -5155,7 +5155,16 @@ as a list.")
(defvar definition-prefixes (make-hash-table :test 'equal)
"Hash table mapping prefixes to the files in which they're used.
This can be used to automatically fetch not-yet-loaded definitions.")
This can be used to automatically fetch not-yet-loaded definitions.
More specifically, if there is a value of the form (FILES...) for a string PREFIX
it means that the FILES define variables or functions with names that start
with PREFIX.
Note that it does not imply that all definitions starting with PREFIX can
be found in those files. E.g. if prefix is \"gnus-article-\" there might
still be definitions of the form \"gnus-article-toto-titi\" in other files, which would
presumably appear in this table under another prefix such as \"gnus-\"
or \"gnus-article-toto-\".")
(defun register-definition-prefixes (file prefixes)
"Register that FILE uses PREFIXES."