diff options
| author | Stefan Monnier | 2015-03-18 23:02:26 -0400 |
|---|---|---|
| committer | Stefan Monnier | 2015-03-18 23:02:26 -0400 |
| commit | 50c117fe86d94719807cbe08353c032779b3b910 (patch) | |
| tree | 9db572083112db33d17d759a245278fa0af7b897 /lisp/ChangeLog | |
| parent | f469024eea692a163beb98a824b5cc0a4e8bcda8 (diff) | |
| download | emacs-50c117fe86d94719807cbe08353c032779b3b910.tar.gz emacs-50c117fe86d94719807cbe08353c032779b3b910.zip | |
EIEIO: Change class's representation to unify instance & class slots
* lisp/emacs-lisp/eieio-core.el (eieio--class): Change field names and order
to match those of cl--class; use cl--slot for both instance slots and
class slots.
(eieio--object-num-slots): Use cl-struct-slot-info.
(eieio--object-class): Rename from eieio--object-class-object.
(eieio--object-class-name): Remove.
(eieio-defclass-internal): Adjust to new slot representation.
Store doc in class rather than in `variable-documentation'.
(eieio--perform-slot-validation-for-default): Change API to take
a slot object.
(eieio--slot-override): New function.
(eieio--add-new-slot): Rewrite.
(eieio-copy-parents-into-subclass): Rewrite.
(eieio--validate-slot-value, eieio--validate-class-slot-value)
(eieio-oref-default, eieio-oset-default)
(eieio--class-slot-name-index, eieio-set-defaults): Adjust to new
slot representation.
(eieio--c3-merge-lists): Simplify.
(eieio--class/struct-parents): New function.
(eieio--class-precedence-bfs): Use it.
* lisp/emacs-lisp/eieio.el (with-slots): Use macroexp-let2.
(object-class-fast): Change recommend replacement.
(eieio-object-class): Rewrite.
(slot-exists-p): Adjust to new slot representation.
(initialize-instance): Adjust to new slot representation.
(object-write): Adjust to new slot representation.
* lisp/emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
Manually map initargs to slot names.
(eieio-persistent-validate/fix-slot-value): Adjust to new
slot representation.
* lisp/emacs-lisp/eieio-compat.el (eieio--generic-static-symbol-specializers):
Extract from eieio--generic-static-symbol-generalizer.
(eieio--generic-static-symbol-generalizer): Use it.
* lisp/emacs-lisp/eieio-custom.el (eieio-object-value-create)
(eieio-object-value-get): Adjust to new slot representation.
* lisp/emacs-lisp/eieio-datadebug.el (data-debug/eieio-insert-slots):
Declare to silence warnings.
(data-debug-insert-object-button): Avoid `object-slots'.
(data-debug/eieio-insert-slots): Adjust to new slot representation.
* lisp/emacs-lisp/eieio-opt.el (eieio--help-print-slot): New function
extracted from eieio-help-class-slots.
(eieio-help-class-slots): Use it. Adjust to new slot representation.
* test/automated/eieio-test-methodinvoke.el (make-instance): Use new-style
`subclass' specializer for a change.
* test/automated/eieio-test-persist.el (persist-test-save-and-compare):
Adjust to new slot representation.
* test/automated/eieio-tests.el (eieio-test-17-virtual-slot): Don't use
initarg in `oset'.
(eieio-test-32-slot-attribute-override-2): Adjust to new
slot representation.
* lisp/emacs-lisp/cl-preloaded.el (cl--class): Fix type of `parents'.
Diffstat (limited to 'lisp/ChangeLog')
| -rw-r--r-- | lisp/ChangeLog | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index e75f81ba75a..7c751f4e8e8 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,57 @@ | |||
| 1 | 2015-03-19 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 2 | |||
| 3 | * emacs-lisp/eieio.el (with-slots): Use macroexp-let2. | ||
| 4 | (object-class-fast): Change recommend replacement. | ||
| 5 | (eieio-object-class): Rewrite. | ||
| 6 | (slot-exists-p): Adjust to new slot representation. | ||
| 7 | (initialize-instance): Adjust to new slot representation. | ||
| 8 | (object-write): Adjust to new slot representation. | ||
| 9 | |||
| 10 | * emacs-lisp/eieio-opt.el (eieio--help-print-slot): New function | ||
| 11 | extracted from eieio-help-class-slots. | ||
| 12 | (eieio-help-class-slots): Use it. Adjust to new slot representation. | ||
| 13 | |||
| 14 | * emacs-lisp/eieio-datadebug.el (data-debug/eieio-insert-slots): | ||
| 15 | Declare to silence warnings. | ||
| 16 | (data-debug-insert-object-button): Avoid `object-slots'. | ||
| 17 | (data-debug/eieio-insert-slots): Adjust to new slot representation. | ||
| 18 | |||
| 19 | * emacs-lisp/eieio-custom.el (eieio-object-value-create) | ||
| 20 | (eieio-object-value-get): Adjust to new slot representation. | ||
| 21 | |||
| 22 | EIEIO: Change class's representation to unify instance and class slots | ||
| 23 | * emacs-lisp/eieio-core.el (eieio--class): Change field names and order | ||
| 24 | to match those of cl--class; use cl--slot for both instance slots and | ||
| 25 | class slots. | ||
| 26 | (eieio--object-num-slots): Use cl-struct-slot-info. | ||
| 27 | (eieio--object-class): Rename from eieio--object-class-object. | ||
| 28 | (eieio--object-class-name): Remove. | ||
| 29 | (eieio-defclass-internal): Adjust to new slot representation. | ||
| 30 | Store doc in class rather than in `variable-documentation'. | ||
| 31 | (eieio--perform-slot-validation-for-default): Change API to take | ||
| 32 | a slot object. | ||
| 33 | (eieio--slot-override): New function. | ||
| 34 | (eieio--add-new-slot): Rewrite. | ||
| 35 | (eieio-copy-parents-into-subclass): Rewrite. | ||
| 36 | (eieio--validate-slot-value, eieio--validate-class-slot-value) | ||
| 37 | (eieio-oref-default, eieio-oset-default) | ||
| 38 | (eieio--class-slot-name-index, eieio-set-defaults): Adjust to new | ||
| 39 | slot representation. | ||
| 40 | (eieio--c3-merge-lists): Simplify. | ||
| 41 | (eieio--class/struct-parents): New function. | ||
| 42 | (eieio--class-precedence-bfs): Use it. | ||
| 43 | |||
| 44 | * emacs-lisp/eieio-compat.el (eieio--generic-static-symbol-specializers): | ||
| 45 | Extract from eieio--generic-static-symbol-generalizer. | ||
| 46 | (eieio--generic-static-symbol-generalizer): Use it. | ||
| 47 | |||
| 48 | * emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object): | ||
| 49 | Manually map initargs to slot names. | ||
| 50 | (eieio-persistent-validate/fix-slot-value): Adjust to new | ||
| 51 | slot representation. | ||
| 52 | |||
| 53 | * emacs-lisp/cl-preloaded.el (cl--class): Fix type of `parents'. | ||
| 54 | |||
| 1 | 2015-03-19 Vibhav Pant <vibhavp@gmail.com> | 55 | 2015-03-19 Vibhav Pant <vibhavp@gmail.com> |
| 2 | 56 | ||
| 3 | * lisp/leim/quail/hangul.el | 57 | * lisp/leim/quail/hangul.el |