summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2024-03-07 15:26:12 -0500
committerStefan Monnier <monnier@iro.umontreal.ca>2024-03-08 02:04:11 -0500
commit76e9c761a45e0157a8ca43eaaf928385d8e0c228 (patch)
tree17a8681f950dda951df50c0415fe0e3870f9d682 /lisp/emacs-lisp
parent4fdcbd09af29e72456c9ca4cfbc9f6e97a88f8b8 (diff)
downloademacs-76e9c761a45e0157a8ca43eaaf928385d8e0c228.tar.gz
emacs-76e9c761a45e0157a8ca43eaaf928385d8e0c228.tar.bz2
emacs-76e9c761a45e0157a8ca43eaaf928385d8e0c228.zip
* lisp/emacs-lisp/oclosure.el (oclosure): Make it a subtype of `function`
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/oclosure.el7
1 files changed, 5 insertions, 2 deletions
diff --git a/lisp/emacs-lisp/oclosure.el b/lisp/emacs-lisp/oclosure.el
index 26cd8594dfc..977d5735171 100644
--- a/lisp/emacs-lisp/oclosure.el
+++ b/lisp/emacs-lisp/oclosure.el
@@ -139,12 +139,15 @@
(:include cl--class)
(:copier nil))
"Metaclass for OClosure classes."
+ ;; The `allparents' slot is used for the predicate that checks if a given
+ ;; object is an OClosure of a particular type.
(allparents nil :read-only t :type (list-of symbol)))
(setf (cl--find-class 'oclosure)
(oclosure--class-make 'oclosure
- "The root parent of all OClosure classes"
- nil nil '(oclosure)))
+ "The root parent of all OClosure types"
+ nil (list (cl--find-class 'function))
+ '(oclosure)))
(defun oclosure--p (oclosure)
(not (not (oclosure-type oclosure))))