Use already existing function.
authorvitaly <v.mayatskih@gmail.com>
Sun, 8 Feb 2009 13:02:45 +0000 (8 14:02 +0100)
committervitaly <v.mayatskih@gmail.com>
Sun, 8 Feb 2009 13:02:45 +0000 (8 14:02 +0100)
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

index 83e70de..8a2ea19 100644 (file)
@@ -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))