]> git.eshelyaron.com Git - emacs.git/commitdiff
* Add comp-cstr-greatest-in-range comp-cstr-smallest-in-range
authorAndrea Corallo <akrl@sdf.org>
Sun, 27 Dec 2020 09:58:29 +0000 (10:58 +0100)
committerAndrea Corallo <akrl@sdf.org>
Sun, 27 Dec 2020 18:45:24 +0000 (19:45 +0100)
* lisp/emacs-lisp/comp-cstr.el (comp-cstr-smallest-in-range)
(comp-cstr-greatest-in-range): New function.
(comp-cstr->, comp-cstr->=, comp-cstr-<, comp-cstr-<=): Make use of.

lisp/emacs-lisp/comp-cstr.el

index 1927207db636aed17ba85e2713d4ad3c995edec3..62e3c47ce3a2800cf15999397028c5e4d1e55462 100644 (file)
@@ -288,6 +288,14 @@ Return them as multiple value."
    ((eq y '-) nil)
    (t (< x y))))
 
+(defsubst comp-cstr-smallest-in-range (range)
+  "Smallest entry in RANGE."
+  (caar range))
+
+(defsubst comp-cstr-greatest-in-range (range)
+  "Greater entry in RANGE."
+  (cdar (last range)))
+
 (defun comp-range-union (&rest ranges)
   "Combine integer intervals RANGES by union set operation."
   (cl-loop
@@ -687,7 +695,7 @@ SRC can be either a comp-cstr or an integer."
            (if (integerp src)
                `((,(1+ src) . +))
              (when-let* ((range (range src))
-                         (low (cdar (last range)))
+                         (low (comp-cstr-greatest-in-range range))
                          (okay (integerp low)))
                `((,(1+ low) . +))))))
       (comp-cstr-set-cmp-range dst old-dst ext-range))))
@@ -700,7 +708,7 @@ SRC can be either a comp-cstr or an integer."
            (if (integerp src)
                `((,src . +))
              (when-let* ((range (range src))
-                         (low (cdar (last range)))
+                         (low (comp-cstr-greatest-in-range range))
                          (okay (integerp low)))
                `((,low . +))))))
       (comp-cstr-set-cmp-range dst old-dst ext-range))))
@@ -713,7 +721,7 @@ SRC can be either a comp-cstr or an integer."
            (if (integerp src)
                `((- . ,(1- src)))
              (when-let* ((range (range src))
-                         (low (caar (last range)))
+                         (low (comp-cstr-smallest-in-range range))
                          (okay (integerp low)))
                `((- . ,(1- low)))))))
       (comp-cstr-set-cmp-range dst old-dst ext-range))))
@@ -726,7 +734,7 @@ SRC can be either a comp-cstr or an integer."
            (if (integerp src)
                `((- . ,src))
              (when-let* ((range (range src))
-                         (low (caar (last range)))
+                         (low (comp-cstr-smallest-in-range range))
                          (okay (integerp low)))
                `((- . ,low))))))
       (comp-cstr-set-cmp-range dst old-dst ext-range))))