Function: logview--invalidate-region-entries

logview--invalidate-region-entries is a natively compiled function defined in logview.el.

Signature

(logview--invalidate-region-entries REGION-START REGION-END &optional OLD-LENGTH)

Source Code

;; Defined in /nix/store/3zkn9hgpv447zb8nrg55d9x2ynmmrk40-emacs-packages-deps/share/emacs/site-lisp/elpa/logview-20260218.2013/logview.el
;;; Internal commands meant as hooks.

(defun logview--invalidate-region-entries (region-start region-end &optional _old-length)
  (logview--std-temporarily-widening
    (logview--std-altering
      (when (> region-start (point-min))
        ;; Here we need to go to the entry beginning and then one more entry back: it is
        ;; possible that after the change current text has to be merged into the previous
        ;; entry as details.
        (let ((entry (get-text-property region-start 'logview-entry)))
          (when entry
            (when (eq (get-text-property (1- region-start) 'logview-entry) entry)
              (setq region-start (or (previous-single-property-change region-start 'logview-entry) (point-min))))))
        (when (and (> region-start (point-min)) (get-text-property (1- region-start) 'logview-entry))
          (setq region-start (or (previous-single-property-change (1- region-start) 'logview-entry) (point-min)))))
      (when (< region-end (point-max))
        (let ((entry (get-text-property region-end 'logview-entry)))
          (when (and entry (eq (get-text-property (1+ region-end) 'logview-entry) entry))
            (setq region-end (or (next-single-property-change region-end 'logview-entry) (point-max))))))
      (remove-list-of-text-properties region-start region-end '(logview-entry fontified)))))