Function: clojure--unwind-last
clojure--unwind-last is a byte-compiled function defined in
clojure-mode.el.
Signature
(clojure--unwind-last)
Documentation
Unwind a thread last macro once.
Point must be between the opening paren and the ->> symbol.
Source Code
;; Defined in ~/.emacs.d/elpa/clojure-mode-20260325.811/clojure-mode.el
(defun clojure--unwind-last ()
"Unwind a thread last macro once.
Point must be between the opening paren and the ->> symbol."
(forward-sexp)
(save-excursion
(let ((contents (clojure-delete-and-extract-sexp)))
(when (looking-at " *\n")
(join-line 'following))
(clojure--ensure-parens-around-function-names)
(let* ((sexp-beg-line (line-number-at-pos))
(sexp-end-line (progn (forward-sexp)
(line-number-at-pos)))
(multiline-sexp-p (not (= sexp-beg-line sexp-end-line))))
(down-list -1)
(if multiline-sexp-p
(insert "\n")
;; `clojure--maybe-unjoin-line' only works when unwinding sexps that were
;; threaded in the same Emacs session, but it also catches cases that
;; `multiline-sexp-p' doesn't.
(clojure--maybe-unjoin-line))
(insert contents))))
(forward-char))