Function: filesets-conditional-sort

filesets-conditional-sort is a byte-compiled function defined in filesets.el.gz.

Signature

(filesets-conditional-sort LST &optional ACCESS-FN)

Documentation

Return a sorted copy of LST, LST being a list of strings.

If filesets-sort-menu-flag is nil, return LST itself.

ACCESS-FN ... function to get the string value of LST's elements.

Source Code

;; Defined in /usr/src/emacs/lisp/filesets.el.gz
(defun filesets-conditional-sort (lst &optional access-fn)
  "Return a sorted copy of LST, LST being a list of strings.
If `filesets-sort-menu-flag' is nil, return LST itself.

ACCESS-FN ... function to get the string value of LST's elements."
  (if filesets-sort-menu-flag
      (let* ((fni (or access-fn
		      (function identity)))
	     (fn (if filesets-sort-case-sensitive-flag
		     (lambda (a b)
		       (string< (funcall fni a)
				(funcall fni b)))
		   (lambda (a b)
		     (string< (upcase (funcall fni a))
			      (upcase (funcall fni b)))))))
	(sort (copy-sequence lst) fn))
    lst))