aboutsummaryrefslogtreecommitdiffstats
path: root/lib/diffseq.h
diff options
context:
space:
mode:
authorStefan Monnier2025-05-07 23:17:41 -0400
committerStefan Monnier2025-05-07 23:18:09 -0400
commit777da8c3f9ea73077c00957d48d8e6b317b9657d (patch)
treecd6a00b12eaee4df2aa5df75c149aef3c2e219f7 /lib/diffseq.h
parenta918f9e640f0c652d2f908fda88ecb2905eb4c58 (diff)
downloademacs-777da8c3f9ea73077c00957d48d8e6b317b9657d.tar.gz
emacs-777da8c3f9ea73077c00957d48d8e6b317b9657d.zip
(cl-deftype): Precompute the predicate function
Always define a `cl-deftype-satisfies` predicate (if possible), so we only need `cl-typep` to "interpret" a type specifier when we use a compound type but never for the atomic types (e.g. never in `cl-types-of`). * lisp/emacs-lisp/cl-macs.el (cl-typep): Test `cl-deftype-satisfies` first. Don't handle `real` here any more. (base-char, character, command, keyword, natnum, real): Define with `c-deftype`. (cl-deftype): Precompute the predicate for the atomic derived type, if applicable. * lisp/emacs-lisp/cl-preloaded.el (cl--define-derived-type): Add argument for the precomputed predicate function. * lisp/emacs-lisp/cl-extra.el (cl-types-of): Use `cl-deftype-satisfies` instead of `cl-type-p`.
Diffstat (limited to 'lib/diffseq.h')
0 files changed, 0 insertions, 0 deletions