(ring-mod): Remove, since floor and mod

now subsume them.  All callers changed.
This commit is contained in:
Paul Eggert 1993-08-10 04:14:17 +00:00
parent adb4746230
commit 2ec5af1103

View file

@ -68,8 +68,8 @@
(= 0 (car (cdr ring)))) (= 0 (car (cdr ring))))
(defun ring-index (index head ringlen veclen) (defun ring-index (index head ringlen veclen)
(setq index (ring-mod index ringlen)) (setq index (mod index ringlen))
(ring-mod (1- (+ head (- ringlen index))) veclen)) (mod (1- (+ head (- ringlen index))) veclen))
(defun ring-insert (ring item) (defun ring-insert (ring item)
"Insert a new item onto the ring. If the ring is full, dump the oldest "Insert a new item onto the ring. If the ring is full, dump the oldest
@ -79,7 +79,7 @@ item to make room."
(hd (car ring)) (hd (car ring))
(ln (car (cdr ring)))) (ln (car (cdr ring))))
(prog1 (prog1
(aset vec (ring-mod (+ hd ln) veclen) item) (aset vec (mod (+ hd ln) veclen) item)
(if (= ln veclen) (if (= ln veclen)
(setcar ring (ring-plus1 hd veclen)) (setcar ring (ring-plus1 hd veclen))
(setcar (cdr ring) (1+ ln)))))) (setcar (cdr ring) (1+ ln))))))
@ -94,7 +94,7 @@ numeric, remove the element indexed."
(ln (car (cdr ring))) (ln (car (cdr ring)))
(vec (cdr (cdr ring))) (vec (cdr (cdr ring)))
(veclen (length vec)) (veclen (length vec))
(tl (ring-mod (1- (+ hd ln)) veclen)) (tl (mod (1- (+ hd ln)) veclen))
oldelt) oldelt)
(if (null index) (if (null index)
(setq index (1- ln))) (setq index (1- ln)))
@ -107,14 +107,6 @@ numeric, remove the element indexed."
(setcar (cdr ring) (1- ln)) (setcar (cdr ring) (1- ln))
oldelt))) oldelt)))
(defun ring-mod (n m)
"Returns N mod M. M is positive.
Answer is guaranteed to be non-negative, and less than m."
(let ((n (% n m)))
(if (>= n 0) n
(+ n
(if (>= m 0) m (- m)))))) ; (abs m)
(defun ring-ref (ring index) (defun ring-ref (ring index)
"Returns RING's INDEX element. "Returns RING's INDEX element.
INDEX need not be <= the ring length, the appropriate modulo operation INDEX need not be <= the ring length, the appropriate modulo operation