]> git.eshelyaron.com Git - emacs.git/commit
* lisp/emacs-lisp/cl-generic.el: Add a method-combination hook.
authorStefan Monnier <monnier@iro.umontreal.ca>
Mon, 26 Jan 2015 14:04:55 +0000 (09:04 -0500)
committerStefan Monnier <monnier@iro.umontreal.ca>
Mon, 26 Jan 2015 14:04:55 +0000 (09:04 -0500)
commit4cdde9196fb4fafb00b0c51b908fd605274147bd
tree34b825a588203225f126027cff47f95772af2a28
parent242354a23acf214ad06d4e3e7e5f5580c8b21d4a
* lisp/emacs-lisp/cl-generic.el: Add a method-combination hook.

(cl-generic-method-combination-function): New var.
(cl--generic-lambda): Remove `with-cnm' arg.
(cl-defmethod): Change accordingly.
(cl-generic-define-method): Don't check qualifiers validity.
Preserve all qualifiers in `method-table'.
(cl-generic-call-method): New function.
(cl--generic-nest): Remove (morph into cl-generic-call-method).
(cl--generic-build-combined-method): Adjust to new format of method-table
and use cl-generic-method-combination-function.
(cl--generic-standard-method-combination): New function, extracted from
cl--generic-build-combined-method.
(cl--generic-cnm-sample): Adjust to new format of method-table.

* lisp/emacs-lisp/eieio-compat.el (eieio--defmethod): Use () qualifiers
instead of :primary.

* lisp/emacs-lisp/eieio-datadebug.el (eieio-debug-methodinvoke):
Remove obsolete function.

* test/automated/cl-generic-tests.el (cl-generic-test-11-next-method-p):
New test.
lisp/ChangeLog
lisp/emacs-lisp/cl-generic.el
lisp/emacs-lisp/eieio-compat.el
lisp/emacs-lisp/eieio-datadebug.el
test/ChangeLog
test/automated/cl-generic-tests.el