elfeed icon indicating copy to clipboard operation
elfeed copied to clipboard

Add edebug specificatons to almost all defmacros

Open zabe40 opened this issue 3 years ago • 0 comments

These declarations make it possible to step through the &body forms of the macros, as opposed to skipping over them entirely while edebugging.

I've tested all the specifications I've added, except for with-elfeed-web since I don't use elfeed-web. However, that macro only has body forms, so the debug specification is extremely simple.

I also attempted to declare an edebug specification to xml-query* and xml-query-all*, and I believe it correctly matches the structure given by the docstring of xml-query-all, but I didn't notice any difference in behaviour when Edebugging, for valid or invalid input.

Heres that attempt:

(def-edebug-elem-spec 'xml-query*
  '([&rest &or
	   symbolp
	   xml-query*
	   (vector symbolp stringp &optional stringp)]
    &optional &or keywordp "*"))

(def-edebug-spec xml-query* (xml-query* sexp))
(def-edebug-spec xml-query-all* (xml-query* sexp))

make check reports that all tests pass.

zabe40 avatar May 29 '22 20:05 zabe40