1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-09 15:50:40 -08:00
emacs/lisp/cedet/srecode
Stefan Monnier 8323394bc8 Use derived-mode-add-parents in remaining uses of derived-mode-parent
Until now multiple inheritance wasn't really used, but some ad-hoc
code went a bit beyond the normal uses of the mode hierarchy.
Use the new multiple inheritance code to replace that ad-hoc code,
thereby eliminating basically all remaining direct uses of the
`derived-mode-parent` property.

CEDET had its own notion of mode hierrchy using `derived-mode-parent`
as well as its own `mode-local-parent` property set via
`define-child-mode`.
`derived-mode-add-parents` lets us reimplement `define-child-mode`
such that CEDET can now use the normal API functions.

* lisp/locate.el (locate-mode): Use `derived-mode-add-parents`.

* lisp/cedet/mode-local.el (get-mode-local-parent): Declare obsolete.
(mode-local-equivalent-mode-p, mode-local-use-bindings-p): Make them
obsolete aliases.
(mode-local--set-parent): Rewrite to use `derived-mode-add-parents`.
Declare as obsolete.
(mode-local-map-mode-buffers): Use `derived-mode-p`.
(mode-local-symbol, mode-local--activate-bindings)
(mode-local--deactivate-bindings, mode-local-describe-bindings-2):
Use `derived-mode-all-parents`.

* lisp/cedet/srecode/table.el (srecode-get-mode-table):
* lisp/cedet/srecode/find.el (srecode-table, srecode-load-tables-for-mode)
(srecode-all-template-hash): Use `derived-mode-all-parents`.

* lisp/cedet/srecode/map.el (srecode-map-entries-for-mode):
* lisp/cedet/semantic/db.el (semanticdb-equivalent-mode):
Use `provided-mode-derived-p` now that it obeys `define-child-mode`.
2023-11-09 00:33:52 -05:00
..
args.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
compile.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
cpp.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ctxt.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
dictionary.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
document.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
el.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
expandproto.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
extract.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
fields.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
filters.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
find.el Use derived-mode-add-parents in remaining uses of derived-mode-parent 2023-11-09 00:33:52 -05:00
getset.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
insert.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
java.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
map.el Use derived-mode-add-parents in remaining uses of derived-mode-parent 2023-11-09 00:33:52 -05:00
mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
semantic.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
srt-mode.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
srt.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
table.el Use derived-mode-add-parents in remaining uses of derived-mode-parent 2023-11-09 00:33:52 -05:00
template.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
texi.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00