Function: occur-accumulate-lines

occur-accumulate-lines is a byte-compiled function defined in replace.el.gz.

Signature

(occur-accumulate-lines COUNT &optional KEEP-PROPS PT)

Source Code

;; Defined in /usr/src/emacs/lisp/replace.el.gz
(defun occur-accumulate-lines (count &optional keep-props pt)
  (save-excursion
    (when pt
      (goto-char pt))
    (let ((forwardp (> count 0))
	  result beg end moved)
      (while (not (or (zerop count)
		      (if forwardp
			  (eobp)
			(and (bobp) (not moved)))))
	(setq count (+ count (if forwardp -1 1)))
	(setq beg (line-beginning-position)
	      end (line-end-position))
	(push (occur-engine-line beg end keep-props) result)
	(setq moved (= 0 (forward-line (if forwardp 1 -1)))))
      (nreverse result))))