]> git.eshelyaron.com Git - emacs.git/commitdiff
Add clarification to if-let* docstring
authorMark Oteiza <mvoteiza@udel.edu>
Wed, 13 Sep 2017 17:25:41 +0000 (13:25 -0400)
committerMark Oteiza <mvoteiza@udel.edu>
Wed, 13 Sep 2017 17:27:49 +0000 (13:27 -0400)
Also make its behaviour consistent with and-let* in that empty bindings
results in success, not failure.
* lisp/emacs-lisp/subr-x.el: Edit docstring, change else to then.

lisp/emacs-lisp/subr-x.el

index ba0ab6cb4c70962e56d7509e7d4b8ab6b2253185..8d41f9298b518bc0b30df59a51f86c2fc9729eab 100644 (file)
@@ -128,9 +128,10 @@ binding value is nil.  If all are non-nil, the value of THEN is
 returned, or the last form in ELSE is returned.
 
 Each element of VARLIST is a list (SYMBOL VALUEFORM) which binds
-SYMBOL to the value of VALUEFORM).
-An element can additionally be of the form (VALUEFORM), which is
-evaluated and checked for nil."
+SYMBOL to the value of VALUEFORM).  An element can additionally
+be of the form (VALUEFORM), which is evaluated and checked for
+nil; i.e. SYMBOL can be omitted if only the test result is of
+interest."
   (declare (indent 2)
            (debug ((&rest [&or symbolp (symbolp form) (sexp)])
                    form body)))
@@ -139,7 +140,7 @@ evaluated and checked for nil."
          (if ,(caar (last varlist))
              ,then
            ,@else))
-    `(let* () ,@else)))
+    `(let* () ,then)))
 
 (defmacro when-let* (varlist &rest body)
   "Bind variables according to VARLIST and conditionally eval BODY.