Function: cider-macrostep-expand
cider-macrostep-expand is an autoloaded, interactive and byte-compiled
function defined in cider-macrostep.el.
Signature
(cider-macrostep-expand)
Documentation
Expand the macro form before point one step, inline.
Place point right after the form, as with M-x cider-eval-form (cider-eval-form). When
point is on a highlighted expandable operator - where n/p land it - that
operator's form is expanded, so you can step with n then expand without
repositioning.
Start a cider-macrostep-mode(var)/cider-macrostep-mode(fun) session when one isn't active; further
expansions and collapses then use that mode's key bindings.
Key Bindings
Source Code
;; Defined in ~/.emacs.d/elpa/cider-20260822.1520/cider-macrostep.el
;;;###autoload
(defun cider-macrostep-expand ()
"Expand the macro form before point one step, inline.
Place point right after the form, as with `\\[cider-eval-form]'. When
point is on a highlighted expandable operator - where `n'/`p' land it - that
operator's form is expanded, so you can step with `n' then expand without
repositioning.
Start a `cider-macrostep-mode' session when one isn't active; further
expansions and collapses then use that mode's key bindings."
(interactive)
(cider-ensure-session)
(pcase-let ((`(,beg . ,end) (or (cider-macrostep--expand-bounds)
(user-error "No sexp before point to expand"))))
(let ((operator (cider-macrostep--operator beg)))
(cider-ensure-macro operator)
(let ((expansion (cider-macrostep--expand
(buffer-substring-no-properties beg end) "macroexpand-1")))
(unless (and (stringp expansion) (not (string-blank-p expansion)))
(user-error "No expansion returned for `%s'" operator))
(cider-macrostep--expand-region beg end expansion)
(cider-macrostep--refresh-overlays)))))