]> git.eshelyaron.com Git - emacs.git/commit
nadvice.el: Use FCRs rather than handmade bytecodes
authorStefan Monnier <monnier@iro.umontreal.ca>
Sat, 18 Dec 2021 15:28:57 +0000 (10:28 -0500)
committerStefan Monnier <monnier@iro.umontreal.ca>
Sat, 18 Dec 2021 15:28:57 +0000 (10:28 -0500)
commit49992d58bd699ce31e7b5f3a4ee4aa1e2b537674
treeebb7687eef78b12bc14d1db3770772b57b9f3896
parentf2d8a24e21c7c83fa92c36bf8cee991dca7ec6a1
nadvice.el: Use FCRs rather than handmade bytecodes

* lisp/emacs-lisp/nadvice.el (advice): New FCR type.
(advice--where-alist): Use FCRs.
(advice--car, advice--cdr, advice--props, advice--where):
Delete functions, now defined for us by `fcr-defstruct`.
(advice--p): Rewrite.
(advice--make-1): Delete function.
(advice--make, advice--tweak): Use `advice--copy` instead.

* lisp/emacs-lisp/fcr.el (fcr--fix-type): Don't use `documentation` to
avoid bootstrap problems.
(fcr-type): Return nil on non-function objects.

* lisp/help.el (help--docstring-quote, help-add-fundoc-usage)
(help--make-usage, help--make-usage-docstring): Move to `subr.el`.

* lisp/subr.el (docstring--quote, docstring-add-fundoc-usage)
(docstring--make-usage, docstring--make-usage-docstring): New names for
functions moved from `help.el` for bootstrap reasons.

* lisp/emacs-lisp/cl-macs.el (cl--transform-lambda): Use the new names.
lisp/emacs-lisp/cl-macs.el
lisp/emacs-lisp/fcr.el
lisp/emacs-lisp/nadvice.el
lisp/help.el
lisp/subr.el