aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohan Bockgård2015-04-12 16:26:51 +0200
committerJohan Bockgård2015-04-12 16:26:51 +0200
commit66a53da5f0c15a1e69675e8157fbbc00a364bb80 (patch)
treed43f2ed1b7df3d9e3992e48036a06e0908a5a29c
parentb62d7956bea87eba82a86bfeba2d637c7ef4016c (diff)
downloademacs-66a53da5f0c15a1e69675e8157fbbc00a364bb80.tar.gz
emacs-66a53da5f0c15a1e69675e8157fbbc00a364bb80.zip
pcase.el: Edebug support for `app' and vector patterns
* lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec. (pcase-UPAT): Use it. Support `app' patterns. (pcase-QPAT): Support vector patterns.
-rw-r--r--lisp/emacs-lisp/pcase.el15
1 files changed, 10 insertions, 5 deletions
diff --git a/lisp/emacs-lisp/pcase.el b/lisp/emacs-lisp/pcase.el
index 3a2fa4fdc81..bbb278c863e 100644
--- a/lisp/emacs-lisp/pcase.el
+++ b/lisp/emacs-lisp/pcase.el
@@ -78,17 +78,22 @@
78 ("`" pcase-QPAT) 78 ("`" pcase-QPAT)
79 ("guard" form) 79 ("guard" form)
80 ("let" pcase-UPAT form) 80 ("let" pcase-UPAT form)
81 ("pred" 81 ("pred" pcase-FUN)
82 &or lambda-expr 82 ("app" pcase-FUN pcase-UPAT)
83 ;; Punt on macros/special forms.
84 (functionp &rest form)
85 sexp)
86 sexp)) 83 sexp))
87 84
88(def-edebug-spec 85(def-edebug-spec
89 pcase-QPAT 86 pcase-QPAT
90 (&or ("," pcase-UPAT) 87 (&or ("," pcase-UPAT)
91 (pcase-QPAT . pcase-QPAT) 88 (pcase-QPAT . pcase-QPAT)
89 (vector &rest pcase-QPAT)
90 sexp))
91
92(def-edebug-spec
93 pcase-FUN
94 (&or lambda-expr
95 ;; Punt on macros/special forms.
96 (functionp &rest form)
92 sexp)) 97 sexp))
93 98
94;;;###autoload 99;;;###autoload