Currently, edebug doesn't understand the ->>
macro in dash.el.
(defun foo ()
(->> (+ 1 1)
(+ 2)
(* 3)
(format "%s")))
C-u M-x edebug-eval-defun
followed by M-: (foo)
does not step through the forms inside ->>
. It just shows the value of the whole (->> ...)
expression.
Looking at the docs for declare
, I don't think I can teach edebug about all the arguments to ->>
. However, the first argument is a form, so I would like to edebug to step through that. I tried this:
(defmacro ->> (x &optional form &rest more)
"Thread the expr through the forms. ..."
(declare (debug (form &rest 0)))
...)
However, this gives me "edebug-match-specs: Too deep - perhaps infinite loop in spec?" when I try to call edebug-eval-defun
on foo
afterwards.
Can I annotate a macro so that the first argument is a form, but edebug skips the rest?