• Stefan Monnier's avatar
    * lisp/emacs-lisp/eieio*.el: Align a bit better with CLOS · c4e2be45
    Stefan Monnier authored
    * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag): Fix copy&paste
    error (semanticdb-project-database => sym).  Avoid eieio--class-public-a
    when possible.
    
    * lisp/emacs-lisp/eieio-base.el (make-instance): Add a method here rather
    than on eieio-constructor.
    
    * lisp/emacs-lisp/eieio-core.el (eieio--class-print-name): New function.
    (eieio-class-name): Make it do what the docstring claims.
    (eieio-defclass-internal): Simplify since `prots' isn't used any more.
    (eieio--slot-name-index): Simplify accordingly.
    (eieio-barf-if-slot-unbound): Pass the class object rather than its
    name to `slot-unbound'.
    
    * lisp/emacs-lisp/eieio.el (defclass): Use make-instance rather than
    eieio-constructor.
    (set-slot-value): Mark as obsolete.
    (eieio-object-class-name): Improve call to eieio-class-name.
    (eieio-slot-descriptor-name, eieio-class-slots): New functions.
    (object-slots): Use it.  Declare obsolete.
    (eieio-constructor): Merge it with `make-instance'.
    (initialize-instance): Use `dolist'.
    (eieio-override-prin1, eieio-edebug-prin1-to-string):
    Use eieio--class-print-name.
    
    * test/automated/eieio-test-methodinvoke.el (make-instance): Add methods
    here rather than on eieio-constructor.
    c4e2be45
db-el.el 12.7 KB