summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorNicolas Petton <nicolas@petton.fr>2015-09-06 00:51:35 +0200
committerNicolas Petton <nicolas@petton.fr>2015-09-06 00:51:35 +0200
commit1b5fda5cbca96aec3e407bc9e4f8a16e48e7954c (patch)
treed85433211e2e19cf00ea34a4b06db3ef1e4c49e6 /lisp/emacs-lisp
parenta1535f938181ea137037d0233924a2c9d9e08f76 (diff)
downloademacs-1b5fda5cbca96aec3e407bc9e4f8a16e48e7954c.tar.gz
emacs-1b5fda5cbca96aec3e407bc9e4f8a16e48e7954c.tar.bz2
emacs-1b5fda5cbca96aec3e407bc9e4f8a16e48e7954c.zip
Improve the semantic of map-some
Update map-some to return the returned by the predicate, similar to seq-some. * lisp/emacs-lisp/map.el (map-some): Update the function to return the return value of the predicate. * test/automated/map-tests.el (test-map-some): Update the test to check for non-nil values only.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/map.el5
1 files changed, 3 insertions, 2 deletions
diff --git a/lisp/emacs-lisp/map.el b/lisp/emacs-lisp/map.el
index 4e7d3b91b16..ea56efefe97 100644
--- a/lisp/emacs-lisp/map.el
+++ b/lisp/emacs-lisp/map.el
@@ -262,8 +262,9 @@ MAP can be a list, hash-table or array."
MAP can be a list, hash-table or array."
(catch 'map--break
(map-apply (lambda (key value)
- (when (funcall pred key value)
- (throw 'map--break (cons key value))))
+ (let ((result (funcall pred key value)))
+ (when result
+ (throw 'map--break result))))
map)
nil))