Function: cl--class-allparents

cl--class-allparents is a byte-compiled function defined in cl-preloaded.el.gz.

Signature

(cl--class-allparents CLASS)

Source Code

;; Defined in /usr/src/emacs/lisp/emacs-lisp/cl-preloaded.el.gz
(defun cl--class-allparents (class)
  (cons (cl--class-name class)
        (let* ((parents (cl--class-parents class))
               (aps (mapcar #'cl--class-allparents parents)))
          (if (null (cdr aps)) ;; Single-inheritance fast-path.
              (car aps)
            (merge-ordered-lists
             ;; Add the list of immediate parents, to control which
             ;; linearization is chosen.  doi:10.1145/236337.236343
             (nconc aps (list (mapcar #'cl--class-name parents))))))))