[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
feature/derived-mode-add-parents 1245ce40293 5/7: subr.el: Add multiple
From: |
Stefan Monnier |
Subject: |
feature/derived-mode-add-parents 1245ce40293 5/7: subr.el: Add multiple inheritance to `derived-mode-p` |
Date: |
Thu, 9 Nov 2023 00:11:54 -0500 (EST) |
branch: feature/derived-mode-add-parents
commit 1245ce4029364da6294b026062063864c13f363c
Author: Stefan Monnier <monnier@iro.umontreal.ca>
Commit: Stefan Monnier <monnier@iro.umontreal.ca>
subr.el: Add multiple inheritance to `derived-mode-p`
Add the ability for a major mode to declare "extra parents" in
addition to the one from which it inherits.
* lisp/subr.el (derived-mode-add-parents): New function.
(derived-mode-all-parents): Adjust accordingly.
---
lisp/subr.el | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/lisp/subr.el b/lisp/subr.el
index e5ea0351934..b000787a5d6 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -2709,8 +2709,8 @@ The returned list is not fresh, don't modify it.
(let ((alias (symbol-function mode)))
(and (symbolp alias) alias))))
(parents (cons mode (if parent (funcall all-parents parent))))
- (extras (get mode 'derived-mode-extra-parent)))
- (put mode 'derived-mode-all-parents
+ (extras (get mode 'derived-mode-extra-parents)))
+ (put mode 'derived-mode--all-parents
(if (null extras) ;; Common case.
parents
(delete-dups
- branch feature/derived-mode-add-parents created (now 1ee1cae724a), Stefan Monnier, 2023/11/09
- feature/derived-mode-add-parents 9c6b22bb3e2 2/7: (derived-mode-all-parents): Speed up with a cache, Stefan Monnier, 2023/11/09
- feature/derived-mode-add-parents e2f4113767e 4/7: subr.el: Add multiple inheritance to `derived-mode-p`, Stefan Monnier, 2023/11/09
- feature/derived-mode-add-parents 19445b6b7bb 1/7: subr.el: Provide a functional API around `derived-mode-parent`, Stefan Monnier, 2023/11/09
- feature/derived-mode-add-parents 492920dd5b4 3/7: Use new `derived-mode-all/set-parents` functions., Stefan Monnier, 2023/11/09
- feature/derived-mode-add-parents 1245ce40293 5/7: subr.el: Add multiple inheritance to `derived-mode-p`,
Stefan Monnier <=
- feature/derived-mode-add-parents 9ac22c6f73f 6/7: Use `derived-mode-add-parents` in remaining uses of `derived-mode-parent`, Stefan Monnier, 2023/11/09
- feature/derived-mode-add-parents 1ee1cae724a 7/7: Move EIEIO's C3 linearization code to `subr.el`, Stefan Monnier, 2023/11/09