Function: cider-macrostep--collapse-overlay

cider-macrostep--collapse-overlay is a byte-compiled function defined in cider-macrostep.el.

Signature

(cider-macrostep--collapse-overlay OV)

Documentation

Collapse overlay OV, restoring the text it replaced.

Overlays nested within OV are removed first; OV's saved text already contains their un-expanded forms, so they need no separate restoration.

Source Code

;; Defined in ~/.emacs.d/elpa/cider-20260822.1520/cider-macrostep.el
(defun cider-macrostep--collapse-overlay (ov)
  "Collapse overlay OV, restoring the text it replaced.
Overlays nested within OV are removed first; OV's saved text already contains
their un-expanded forms, so they need no separate restoration."
  (when (overlay-buffer ov)
    (let ((start (overlay-start ov))
          (end (overlay-end ov))
          (original (overlay-get ov 'cider-macrostep-original-text)))
      (dolist (inner (cider-macrostep--overlays-within start end))
        (setq cider-macrostep--overlays (delq inner cider-macrostep--overlays))
        (delete-overlay inner))
      (with-silent-modifications
        (let ((inhibit-read-only t))
          (atomic-change-group
            (goto-char start)
            (delete-region start end)
            (insert original)
            (goto-char start))))
      (setq cider-macrostep--overlays (delq ov cider-macrostep--overlays))
      (delete-overlay ov))))