Function: cider-who-macroexpands

cider-who-macroexpands is an autoloaded, interactive and byte-compiled function defined in cider-xref.el.

Signature

(cider-who-macroexpands &optional SYMBOL)

Documentation

Show the use sites of the macro SYMBOL by scanning the project's source.

Macro calls are expanded away at compile time, so the runtime fn-refs op (and hence cider-who-calls) can't see them; this finds them textually instead, the same way cider-xref-fn-refs-in-source does. It works for any var, but for a function cider-who-calls is usually the better tool.

Key Bindings

Source Code

;; Defined in ~/.emacs.d/elpa/cider-20260822.1520/cider-xref.el
;;;###autoload
(defun cider-who-macroexpands (&optional symbol)
  "Show the use sites of the macro SYMBOL by scanning the project's source.
Macro calls are expanded away at compile time, so the runtime `fn-refs' op (and
hence `cider-who-calls') can't see them; this finds them textually instead, the
same way `cider-xref-fn-refs-in-source' does.  It works for any var, but for a
function `cider-who-calls' is usually the better tool."
  (interactive)
  (let ((symbol (or symbol (cider-symbol-at-point)
                    (read-string "Macro use sites of: "))))
    (when-let* ((info (cider-var-info symbol)))
      (unless (string= (nrepl-dict-get info "macro") "true")
        (message "%s doesn't look like a macro; showing its source references anyway"
                 symbol)))
    (cider-xref--show-source-references symbol)))