diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2011-05-22 21:39:25 -0300 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2011-05-22 21:39:25 -0300 |
commit | b1ef1257fe09bb9c602fc9d488b132896e4d16a9 (patch) | |
tree | 9f2140a6ea5e6e4ad53846c1a7f924f93d1197c4 /lisp/emacs-lisp | |
parent | 7400048f602459209e89da4680ed9cc351ace4ee (diff) | |
download | emacs-b1ef1257fe09bb9c602fc9d488b132896e4d16a9.tar.gz emacs-b1ef1257fe09bb9c602fc9d488b132896e4d16a9.tar.bz2 emacs-b1ef1257fe09bb9c602fc9d488b132896e4d16a9.zip |
* lisp/emacs-lisp/eieio.el (eieio-defgeneric-form-primary-only-one):
Fix function quoting. Use backquote better.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r-- | lisp/emacs-lisp/eieio.el | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/lisp/emacs-lisp/eieio.el b/lisp/emacs-lisp/eieio.el index 8c5260106a8..83c09b6fe0f 100644 --- a/lisp/emacs-lisp/eieio.el +++ b/lisp/emacs-lisp/eieio.el @@ -1226,29 +1226,28 @@ IMPL is the symbol holding the method implementation." (if (not (eieio-object-p (car local-args))) ;; Not an object. Just signal. (signal 'no-method-definition - (list ,(list 'quote method) local-args)) + (list ',method local-args)) ;; We do have an object. Make sure it is the right type. (if ,(if (eq class eieio-default-superclass) - nil ; default superclass means just an obj. Already asked. + nil ; default superclass means just an obj. Already asked. `(not (child-of-class-p (aref (car local-args) object-class) - ,(list 'quote class))) - ) + ',class))) ;; If not the right kind of object, call no applicable (apply 'no-applicable-method (car local-args) - ,(list 'quote method) local-args) + ',method local-args) ;; It is ok, do the call. ;; Fill in inter-call variables then evaluate the method. - (let ((scoped-class ,(list 'quote class)) + (let ((scoped-class ',class) (eieio-generic-call-next-method-list nil) (eieio-generic-call-key method-primary) - (eieio-generic-call-methodname ,(list 'quote method)) + (eieio-generic-call-methodname ',method) (eieio-generic-call-arglst local-args) ) - (apply ,(list 'quote impl) local-args) - ;(,impl local-args) + (apply #',impl local-args) + ;;(,impl local-args) ))))))) (defsubst eieio-defgeneric-reset-generic-form-primary-only-one (method) |