From a5191bc995280a91cfe1d4d5853f2e9fd27a2372 Mon Sep 17 00:00:00 2001 From: vitaly Date: Sun, 8 Feb 2009 14:02:45 +0100 Subject: [PATCH] Use already existing function. Commit 3ab423f0f6c35efedcc008fa623ab238b599e893 introduced sequence-compress and sequence-uncompress functions (taken from Gnus). Sequence-compress is not used yet, and sequence-uncompress duplicates functionality of built-in elmo-number-set-to-number-list function. Remove them. --- elmo/elmo-imap4.el | 59 +----------------------------------------------------- 1 file changed, 1 insertion(+), 58 deletions(-) diff --git a/elmo/elmo-imap4.el b/elmo/elmo-imap4.el index 83e70de..8a2ea19 100644 --- a/elmo/elmo-imap4.el +++ b/elmo/elmo-imap4.el @@ -746,63 +746,6 @@ Returns response value if selecting folder succeed. " ;; Not used. ) -;; sequence-compress and -uncompress were taken from Gnus -(defun sequence-compress (numbers &optional always-list) - "Convert sorted list of numbers to a list of ranges or a single range. -If ALWAYS-LIST is non-nil, this function will always release a list of -ranges." - (let* ((first (car numbers)) - (last (car numbers)) - result) - (if (null numbers) - nil - (if (not (listp (cdr numbers))) - numbers - (while numbers - (cond ((= last (car numbers)) nil) ;Omit duplicated number - ((= (1+ last) (car numbers)) ;Still in sequence - (setq last (car numbers))) - (t ;End of one sequence - (setq result - (cons (if (= first last) first - (cons first last)) - result)) - (setq first (car numbers)) - (setq last (car numbers)))) - (setq numbers (cdr numbers))) - (if (and (not always-list) (null result)) - (if (= first last) (list first) (cons first last)) - (nreverse (cons (if (= first last) first (cons first last)) - result))))))) - -(defun sequence-uncompress (ranges) - "Expand a list of ranges into a list of numbers. -RANGES is either a single range on the form `(num . num)' or a list of -these ranges." - (let (first last result) - (cond - ((null ranges) - nil) - ((not (listp (cdr ranges))) - (setq first (car ranges)) - (setq last (cdr ranges)) - (while (<= first last) - (setq result (cons first result)) - (setq first (1+ first))) - (nreverse result)) - (t - (while ranges - (if (atom (car ranges)) - (when (numberp (car ranges)) - (setq result (cons (car ranges) result))) - (setq first (caar ranges)) - (setq last (cdar ranges)) - (while (<= first last) - (setq result (cons first result)) - (setq first (1+ first)))) - (setq ranges (cdr ranges))) - (nreverse result))))) - (defun elmo-imap4-elist (folder query tags) (let ((session (elmo-imap4-get-session folder))) (elmo-imap4-session-select-mailbox @@ -821,7 +764,7 @@ these ranges." (append result (if (eq tag 'all) (sort - (sequence-uncompress + (elmo-number-set-to-number-list (mapcar #'(lambda (x) (let ((y (split-string x ":"))) (if (null (cdr y)) -- 2.11.4.GIT