* Add comp-cstr-greatest-in-range comp-cstr-smallest-in-range
* 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.
This commit is contained in:
parent
ee53560c8c
commit
34e9aae440
1 changed files with 12 additions and 4 deletions
|
@ -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))))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue