Function: comp--direct-subtypes
comp--direct-subtypes is a byte-compiled function defined in
comp-cstr.el.gz.
Signature
(comp--direct-subtypes TYPE)
Documentation
Return all the direct subtypes of TYPE.
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/comp-cstr.el.gz
(defun comp--direct-subtypes (type)
"Return all the direct subtypes of TYPE."
;; TODO: memoize.
(let ((subtypes ()))
(dolist (j (comp-cstr-ctxt-typeof-types comp-ctxt))
(let ((occur (memq type j)))
(when occur
(while (not (eq j occur))
(let ((candidate (pop j)))
(when (and (not (memq candidate subtypes))
(memq type (comp--direct-supertypes candidate)))
(push candidate subtypes)))))))
(cl-sort subtypes #'comp--sym-lessp)))