Function: custom--sort-vars-1

custom--sort-vars-1 is a byte-compiled function defined in custom.el.gz.

Signature

(custom--sort-vars-1 SYM &optional IGNORED)

Source Code

;; Defined in /usr/src/emacs/lisp/custom.el.gz
(defun custom--sort-vars-1 (sym &optional _ignored)
  (let ((elt (gethash sym custom--sort-vars-table)))
    ;; The car of the hash table value is nil if the variable has
    ;; already been processed, `dependant' if it is a dependant in the
    ;; current graph descent, and t otherwise.
    (when elt
      (cond
       ((eq (car elt) 'dependant)
	(error "Circular custom dependency on `%s'" sym))
       ((car elt)
	(setcar elt 'dependant)
	(dolist (dep (get sym 'custom-dependencies))
	  (custom--sort-vars-1 dep))
	(setcar elt nil)
	(push (cdr elt) custom--sort-vars-result))))))