diff options
| author | Stefan Monnier | 2014-12-22 15:13:02 -0500 |
|---|---|---|
| committer | Stefan Monnier | 2014-12-22 15:13:02 -0500 |
| commit | bcebc831bb9c1fd82b4693e6a091a4cf591dc3ec (patch) | |
| tree | 1fe8d3bf282f4cc676396aec6f4b02424a8b01f0 /lisp/ChangeLog | |
| parent | b11d8924b565bd96939537b10a70bb3c26532bed (diff) | |
| download | emacs-bcebc831bb9c1fd82b4693e6a091a4cf591dc3ec.tar.gz emacs-bcebc831bb9c1fd82b4693e6a091a4cf591dc3ec.zip | |
* lisp/emacs-lisp/eieio*.el: Use hashtables rather than obarrays
* lisp/emacs-lisp/eieio-core.el (class): Rename field symbol-obarray to
symbol-hashtable. It contains a hashtable instead of an obarray.
(generic-p): Use symbol property `eieio-method-hashtable' instead of
`eieio-method-obarray'.
(generic-primary-only-p, generic-primary-only-one-p):
Slight optimization.
(eieio-defclass-autoload-map): Use a hashtable instead of an obarray.
(eieio-defclass-autoload, eieio-defclass): Adjust/simplify accordingly.
(eieio-class-un-autoload): Use autoload-do-load.
(eieio-defclass): Use dolist, cl-pushnew, cl-callf.
Use new cl-deftype-satisfies. Adjust to use of hashtables.
Don't hardcode the value of eieio--object-num-slots.
(eieio-defgeneric-form-primary-only-one): Remove `doc-string' arg.
Use a closure rather than a backquoted lambda.
(eieio--defmethod): Adjust call accordingly. Set doc-string via the
function-documentation property.
(eieio-slot-originating-class-p, eieio-slot-name-index)
(eieiomt--optimizing-hashtable, eieiomt-install, eieiomt-add)
(eieio-generic-form): Adjust to use of hashtables.
(eieiomt--sym-optimize): Rename from eieiomt-sym-optimize; take
additional class argument.
(eieio-generic-call-methodname): Remove, unused.
* lisp/emacs-lisp/eieio-custom.el: Use lexical-binding.
(eieio-object-value-to-abstract): Simplify.
* lisp/emacs-lisp/eieio-datadebug.el: Use lexical-binding.
* lisp/emacs-lisp/eieio-opt.el (eieio-build-class-list): Use cl-mapcan.
(eieio-build-class-alist): Use dolist.
(eieio-all-generic-functions): Adjust to use of hashtables.
* lisp/emacs-lisp/eieio.el (child-of-class-p): Fix case where `class' is
`eieio-default-superclass'.
* test/automated/eieio-test-methodinvoke.el (eieio-test-method-store):
Remove use of eieio-generic-call-methodname.
(eieio-test-method-order-list-3, eieio-test-method-order-list-6)
(eieio-test-method-order-list-7, eieio-test-method-order-list-8):
Adjust the expected result accordingly.
* lisp/emacs-lisp/eieio-base.el (eieio-persistent-slot-type-is-class-p):
Prefer \' to $.
Diffstat (limited to 'lisp/ChangeLog')
| -rw-r--r-- | lisp/ChangeLog | 48 |
1 files changed, 44 insertions, 4 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index d8bb1c89f1f..c2f45845306 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,5 +1,45 @@ | |||
| 1 | 2014-12-22 Stefan Monnier <monnier@iro.umontreal.ca> | 1 | 2014-12-22 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 2 | ||
| 3 | * emacs-lisp/eieio.el (child-of-class-p): Fix case where `class' is | ||
| 4 | `eieio-default-superclass'. | ||
| 5 | |||
| 6 | * emacs-lisp/eieio-datadebug.el: Use lexical-binding. | ||
| 7 | |||
| 8 | * emacs-lisp/eieio-custom.el: Use lexical-binding. | ||
| 9 | (eieio-object-value-to-abstract): Simplify. | ||
| 10 | |||
| 11 | * emacs-lisp/eieio-opt.el (eieio-build-class-list): Use cl-mapcan. | ||
| 12 | (eieio-build-class-alist): Use dolist. | ||
| 13 | (eieio-all-generic-functions): Adjust to use of hashtables. | ||
| 14 | |||
| 15 | * emacs-lisp/eieio-core.el (class): Rename field symbol-obarray to | ||
| 16 | symbol-hashtable. It contains a hashtable instead of an obarray. | ||
| 17 | (generic-p): Use symbol property `eieio-method-hashtable' instead of | ||
| 18 | `eieio-method-obarray'. | ||
| 19 | (generic-primary-only-p, generic-primary-only-one-p): | ||
| 20 | Slight optimization. | ||
| 21 | (eieio-defclass-autoload-map): Use a hashtable instead of an obarray. | ||
| 22 | (eieio-defclass-autoload, eieio-defclass): Adjust/simplify accordingly. | ||
| 23 | (eieio-class-un-autoload): Use autoload-do-load. | ||
| 24 | (eieio-defclass): Use dolist, cl-pushnew, cl-callf. | ||
| 25 | Use new cl-deftype-satisfies. Adjust to use of hashtables. | ||
| 26 | Don't hardcode the value of eieio--object-num-slots. | ||
| 27 | (eieio-defgeneric-form-primary-only-one): Remove `doc-string' arg. | ||
| 28 | Use a closure rather than a backquoted lambda. | ||
| 29 | (eieio--defmethod): Adjust call accordingly. Set doc-string via the | ||
| 30 | function-documentation property. | ||
| 31 | (eieio-slot-originating-class-p, eieio-slot-name-index) | ||
| 32 | (eieiomt--optimizing-hashtable, eieiomt-install, eieiomt-add) | ||
| 33 | (eieio-generic-form): Adjust to use of hashtables. | ||
| 34 | (eieiomt--sym-optimize): Rename from eieiomt-sym-optimize; take | ||
| 35 | additional class argument. | ||
| 36 | (eieio-generic-call-methodname): Remove, unused. | ||
| 37 | |||
| 38 | * emacs-lisp/eieio-base.el (eieio-persistent-slot-type-is-class-p): | ||
| 39 | Prefer \' to $. | ||
| 40 | |||
| 41 | 2014-12-22 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 42 | |||
| 3 | * completion.el: Use post-self-insert-hook (bug#19400). | 43 | * completion.el: Use post-self-insert-hook (bug#19400). |
| 4 | (completion-separator-self-insert-command) | 44 | (completion-separator-self-insert-command) |
| 5 | (completion-separator-self-insert-autofilling): Remove. | 45 | (completion-separator-self-insert-autofilling): Remove. |
| @@ -95,8 +135,8 @@ | |||
| 95 | * electric.el (Electric-pop-up-window): | 135 | * electric.el (Electric-pop-up-window): |
| 96 | * help.el (resize-temp-buffer-window): Call fit-window-to-buffer | 136 | * help.el (resize-temp-buffer-window): Call fit-window-to-buffer |
| 97 | with `preserve-size' t. | 137 | with `preserve-size' t. |
| 98 | * minibuffer.el (minibuffer-completion-help): Use | 138 | * minibuffer.el (minibuffer-completion-help): |
| 99 | `resize-temp-buffer-window' instead of `fit-window-to-buffer' | 139 | Use `resize-temp-buffer-window' instead of `fit-window-to-buffer' |
| 100 | (Bug#19355). Preserve size of completions window. | 140 | (Bug#19355). Preserve size of completions window. |
| 101 | * register.el (register-preview): Preserve size of register | 141 | * register.el (register-preview): Preserve size of register |
| 102 | preview window. | 142 | preview window. |
| @@ -106,8 +146,8 @@ | |||
| 106 | `window-preserve-size'. | 146 | `window-preserve-size'. |
| 107 | (window-min-pixel-size, window--preservable-size) | 147 | (window-min-pixel-size, window--preservable-size) |
| 108 | (window-preserve-size, window-preserved-size) | 148 | (window-preserve-size, window-preserved-size) |
| 109 | (window--preserve-size, window--min-size-ignore-p): New | 149 | (window--preserve-size, window--min-size-ignore-p): |
| 110 | functions. | 150 | New functions. |
| 111 | (window-min-size, window-min-delta, window--resizable) | 151 | (window-min-size, window-min-delta, window--resizable) |
| 112 | (window--resize-this-window, split-window-below) | 152 | (window--resize-this-window, split-window-below) |
| 113 | (split-window-right): Amend doc-string. | 153 | (split-window-right): Amend doc-string. |