summaryrefslogtreecommitdiff
path: root/lisp/mpc.el
diff options
context:
space:
mode:
authorMark Oteiza <mvoteiza@udel.edu>2017-09-12 12:44:45 -0400
committerMark Oteiza <mvoteiza@udel.edu>2017-09-12 13:18:06 -0400
commit4612b2a2b37026bef5a9b8e92878a15dabb9b261 (patch)
tree2434bb2f510047ae9570086c424266743411a39f /lisp/mpc.el
parentc87331a1c04aa4be55be7b944680e4ec486f5b04 (diff)
downloademacs-4612b2a2b37026bef5a9b8e92878a15dabb9b261.tar.gz
Implement and-let*
This also includes changes to if-let and when-let. The single tuple special case is ambiguous, and binding a symbol to nil is not as useful as binding it to its value outside the lexical scope of the binding. (Bug#28254) * etc/NEWS: Mention. * lisp/emacs-lisp/subr-x.el (internal--listify): (internal--build-binding-value-form): Extend to account for solitary symbols and (EXPR) items in binding varlist. (if-let*, when-let*): Nix single tuple case and incumbent bind-symbol-to-nil behavior. (and-let*): New macro. (if-let, when-let): Mark obsolete. Redefine in terms of if-let*, so they implicitly gain the new features without breaking existing code. * test/lisp/emacs-lisp/subr-x-tests.el: Adjust tests for: lack of single-tuple special case, lack of binding solitary symbols to nil, and the introduction of uninterned symbols for (EXPR) bindings. Add SRFI-2 test suite adapted to Elisp.
Diffstat (limited to 'lisp/mpc.el')
0 files changed, 0 insertions, 0 deletions