+2010-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/pcase.el (pcase-let*, pcase-let): Add debug and
+ indentation specs.
+
2010-11-11 Stefan Monnier <monnier@iro.umontreal.ca>
* progmodes/modula2.el: Use SMIE and skeleton.
* emacs-lisp/package.el (package-read-all-archive-contents):
Reset package-archive-contents to nil before re-reading.
-2010-11-10 Brandon Craig Rhodes <brandon@rhodesmill.org>
+2010-11-10 Brandon Craig Rhodes <brandon@rhodesmill.org> (tiny change)
* textmodes/flyspell.el (flyspell-word): Do not re-check words
already found as misspellings by (flyspell-large-region), just
E.g. you can match pairs where the cdr is larger than the car with a pattern
like `(,a . ,(pred (< a))) or, with more checks:
`(,(and a (pred numberp)) . ,(and (pred numberp) (pred (< a))))"
- (declare (indent 1) (debug case))
+ (declare (indent 1) (debug case)) ;FIXME: edebug `guard' and vars.
(or (gethash (cons exp cases) pcase-memoize)
(puthash (cons exp cases)
(pcase-expand exp cases)
"Like `let*' but where you can use `pcase' patterns for bindings.
BODY should be an expression, and BINDINGS should be a list of bindings
of the form (UPAT EXP)."
+ (declare (indent 1) (debug let))
(if (null bindings) body
`(pcase ,(cadr (car bindings))
(,(caar bindings) (pcase-let* ,(cdr bindings) ,body))
"Like `let' but where you can use `pcase' patterns for bindings.
BODY should be an expression, and BINDINGS should be a list of bindings
of the form (UPAT EXP)."
+ (declare (indent 1) (debug let))
(if (null (cdr bindings))
`(pcase-let* ,bindings ,body)
(setq bindings (mapcar (lambda (x) (cons (make-symbol "x") x)) bindings))