mirror of
https://github.com/masscollaborationlabs/emacs.git
synced 2025-07-05 19:59:38 +00:00
![]() Change docs to advertize `slot-value` rather than `oref`. Change the implementation of `:initform` to better match the CLOS semantics, while preserving the EIEIO semantics, but warn when encountering cases where the two diverge. Demote the mostly unused special semantics of `oref-default` on non-class allocated slots. * doc/misc/eieio.texi (Quick Start): Use `slot-value`. (Accessing Slots): Move `slot-value` before `oref`. Fix paren-typo in example (reported by pillule <pillule@riseup.net>). (Introspection): Remove mention of `class-slot-initarg`. * lisp/transient.el (transient--parse-group, transient--parse-suffix): Don't use `oref-default` to get the default value. (transient-lisp-variable): Init forms are evaluated. * lisp/emacs-lisp/eieio.el (defclass): Warn about inapplicable `:initarg` and about uses of init forms that are ambiguous. (oref): Don't advertize the deprecated use of initargs as slot names. (oref-default): Don't advertize the deprecated case where it returns the initform's value. (initialize-instance): Use `macroexp-const-p`. * lisp/emacs-lisp/eieio-core.el (eieio--unbound): Rename from `eieio-unbound`. (eieio--unbound-form): New var. (eieio--slot-override): Use it. (eieio-defclass-internal): Use it. Change `init` so it should always be evaluated. (eieio--known-class-slot-names): New var. (eieio--eval-default-p): Rename from `eieio-eval-default-p`. (eieio--perform-slot-validation-for-default): Use `macroexp-const-p` to decide whether to skip the test. (eieio--add-new-slot): Register slot in `eieio--known-class-slot-names` when applicable. (eieio-oref-default, eieio-oset-default): Add warning for unknown slots and slots not known to be allocated to the class. (eieio-default-eval-maybe): Delete function. Use just `eval` instead. (eieio-declare-slots): Allow slots to specify their allocation class. * lisp/cedet/srecode/insert.el (point): Declare the slot instead of moving the class definition before the slot's first use. (srecode-template-inserter-point, srecode-insert-fcn): Use nil instead of unbound for the `point` slot. * lisp/cedet/srecode/compile.el (srecode-template-inserter): Declare the `key` slot that all children should have. * lisp/emacs-lisp/eieio-speedbar.el (eieio-speedbar) (eieio-speedbar-directory-button, eieio-speedbar-file-button): * lisp/emacs-lisp/eieio-custom.el (eieio-widget-test-class): * lisp/emacs-lisp/chart.el (chart-bar): * lisp/cedet/semantic/ede-grammar.el (semantic-ede-proj-target-grammar): * lisp/cedet/semantic/db.el (semanticdb-project-database): * lisp/cedet/semantic/db-javascript.el (semanticdb-table-javascript) (semanticdb-project-database-javascript): * lisp/cedet/semantic/db-el.el (semanticdb-table-emacs-lisp) (semanticdb-project-database-emacs-lisp): * lisp/cedet/semantic/db-ebrowse.el (semanticdb-table-ebrowse) (semanticdb-project-database-ebrowse): * lisp/cedet/ede/proj.el (ede-proj-project): * lisp/cedet/ede/proj-obj.el (ede-proj-target-makefile-objectcode): * lisp/cedet/ede/generic.el (ede-generic-project): * lisp/cedet/ede/config.el (ede-project-with-config): * lisp/cedet/ede/base.el (ede-target, ede-project): * lisp/auth-source.el (auth-source-backend): Init forms are evaluated, so quote them accordingly. |
||
---|---|---|
.. | ||
advice.el | ||
autoload.el | ||
avl-tree.el | ||
backquote.el | ||
backtrace.el | ||
benchmark.el | ||
bindat.el | ||
byte-opt.el | ||
byte-run.el | ||
bytecomp.el | ||
cconv.el | ||
chart.el | ||
check-declare.el | ||
checkdoc.el | ||
cl-extra.el | ||
cl-generic.el | ||
cl-indent.el | ||
cl-lib.el | ||
cl-macs.el | ||
cl-preloaded.el | ||
cl-print.el | ||
cl-seq.el | ||
comp-cstr.el | ||
comp.el | ||
copyright.el | ||
crm.el | ||
cursor-sensor.el | ||
debug.el | ||
derived.el | ||
disass.el | ||
easy-mmode.el | ||
easymenu.el | ||
edebug.el | ||
eieio-base.el | ||
eieio-compat.el | ||
eieio-core.el | ||
eieio-custom.el | ||
eieio-datadebug.el | ||
eieio-opt.el | ||
eieio-speedbar.el | ||
eieio.el | ||
eldoc.el | ||
elint.el | ||
elp.el | ||
ert-x.el | ||
ert.el | ||
ewoc.el | ||
faceup.el | ||
find-func.el | ||
float-sup.el | ||
generator.el | ||
generic.el | ||
gv.el | ||
helper.el | ||
hierarchy.el | ||
inline.el | ||
let-alist.el | ||
lisp-mnt.el | ||
lisp-mode.el | ||
lisp.el | ||
macroexp.el | ||
map-ynp.el | ||
map.el | ||
memory-report.el | ||
nadvice.el | ||
package-x.el | ||
package.el | ||
pcase.el | ||
pp.el | ||
radix-tree.el | ||
re-builder.el | ||
regexp-opt.el | ||
regi.el | ||
ring.el | ||
rmc.el | ||
rx.el | ||
seq.el | ||
shadow.el | ||
shortdoc.el | ||
smie.el | ||
subr-x.el | ||
syntax.el | ||
tabulated-list.el | ||
tcover-ses.el | ||
testcover.el | ||
text-property-search.el | ||
thunk.el | ||
timer-list.el | ||
timer.el | ||
tq.el | ||
trace.el | ||
unsafep.el | ||
warnings.el |