Function: cl--map-overlays

cl--map-overlays is an autoloaded and byte-compiled function defined in cl-extra.el.gz.

Signature

(cl--map-overlays CL-FUNC &optional CL-BUFFER CL-START CL-END CL-ARG)

Aliases

cl-map-extents (obsolete since 24.3)

Source Code

;; Defined in /usr/src/emacs/lisp/emacs-lisp/cl-extra.el.gz
;;;###autoload
(defun cl--map-overlays (cl-func &optional cl-buffer cl-start cl-end cl-arg)
  (or cl-buffer (setq cl-buffer (current-buffer)))
  (let (cl-ovl)
    (with-current-buffer cl-buffer
      (setq cl-ovl (overlay-lists))
      (if cl-start (setq cl-start (copy-marker cl-start)))
      (if cl-end (setq cl-end (copy-marker cl-end))))
    (setq cl-ovl (nconc (car cl-ovl) (cdr cl-ovl)))
    (while (and cl-ovl
		(or (not (overlay-start (car cl-ovl)))
		    (and cl-end (>= (overlay-start (car cl-ovl)) cl-end))
		    (and cl-start (<= (overlay-end (car cl-ovl)) cl-start))
		    (not (funcall cl-func (car cl-ovl) cl-arg))))
      (setq cl-ovl (cdr cl-ovl)))
    (if cl-start (set-marker cl-start nil))
    (if cl-end (set-marker cl-end nil))))