]> git.eshelyaron.com Git - emacs.git/commit
* lisp/emacs-lisp/cl-generic.el: Use OClosure for `cl-next-method-p`
authorStefan Monnier <monnier@iro.umontreal.ca>
Mon, 13 Dec 2021 16:33:49 +0000 (11:33 -0500)
committerStefan Monnier <monnier@iro.umontreal.ca>
Mon, 13 Dec 2021 16:33:49 +0000 (11:33 -0500)
commitf11349ed20c05fbe97db219eecfae0059d7ee4c0
tree7b538ad3e6de07258aaeac2fc4b36c0ca2011222
parent263172dbfb929eaa7eb028a60e07011844786ba1
* lisp/emacs-lisp/cl-generic.el: Use OClosure for `cl-next-method-p`

* lisp/emacs-lisp/oclosure.el (oclosure--define): Avoid `cl-lib` at run-time.
(oclosure--type-sym): Delete variable.  Use an interned symbol instead,
so the closures stand a chance of being printable readably.
(oclosure--fix-type, oclosure--copy, oclosure-get, oclosure-type): Adjust accordingly.

* lisp/emacs-lisp/cl-generic.el (cl--generic-nnm): New OClosure type.
(cl--generic-no-next-method-function): Delete function.
(cl-generic-call-method): Use it for the default no-next-method case.
(cl--generic-nnm-sample, cl--generic-cnm-sample): Delete vars.
(cl--generic-isnot-nnm-p): Use `oclosure-type`.
lisp/emacs-lisp/cl-generic.el
lisp/emacs-lisp/oclosure.el