Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add edebug specificatons to almost all defmacros #458

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

zabe40
Copy link

@zabe40 zabe40 commented May 29, 2022

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.

These declarations make it possible to step through the &body forms of
the macros, as opposed to skipping over them entirely while
edebugging.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant