unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#11495: 24.1.50; Edebug spec for `pcase'
@ 2012-05-16 23:07 Johan Bockgård
  2012-06-11  0:46 ` Stefan Monnier
  0 siblings, 1 reply; 2+ messages in thread
From: Johan Bockgård @ 2012-05-16 23:07 UTC (permalink / raw)
  To: 11495


There's a FIXME note for the debug spec of the `pcase' macro.

I think this should do the job:

    (def-edebug-spec
      pcase
      (form &rest (pcase-UPAT body)))

    (def-edebug-spec
      pcase-UPAT
      (&or symbolp
           ("or" &rest pcase-UPAT)
           ("and" &rest pcase-UPAT)
           ("`" pcase-QPAT)
           ("pred"
            &or lambda-expr
                ;; Punt on macros/special forms.
                ([&not functionp] fboundp &rest sexp)
                ([&or lambda-expr sexp] &rest form)
                sexp)
           ("guard" form)
           ("let" pcase-UPAT form)))

    (def-edebug-spec
      pcase-QPAT
      (&or ("," pcase-UPAT)
           (pcase-QPAT . [&or nil pcase-QPAT])
           sexp))





^ permalink raw reply	[flat|nested] 2+ messages in thread

* bug#11495: 24.1.50; Edebug spec for `pcase'
  2012-05-16 23:07 bug#11495: 24.1.50; Edebug spec for `pcase' Johan Bockgård
@ 2012-06-11  0:46 ` Stefan Monnier
  0 siblings, 0 replies; 2+ messages in thread
From: Stefan Monnier @ 2012-06-11  0:46 UTC (permalink / raw)
  To: Johan Bockgård; +Cc: 11495-done

> There's a FIXME note for the debug spec of the `pcase' macro.
> I think this should do the job:

Thanks.  I installed your code with some minor tweaks.


        Stefan





^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-06-11  0:46 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-05-16 23:07 bug#11495: 24.1.50; Edebug spec for `pcase' Johan Bockgård
2012-06-11  0:46 ` Stefan Monnier

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).