[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/dash 7f2b3c7 343/426: [-lambda] test all match-forms be
From: |
Phillip Lord |
Subject: |
[elpa] externals/dash 7f2b3c7 343/426: [-lambda] test all match-forms before converting to regular lambda |
Date: |
Tue, 04 Aug 2015 19:38:45 +0000 |
branch: externals/dash
commit 7f2b3c72e52f11f7aee8b97aa9068e620c29115d
Author: Matus Goljer <address@hidden>
Commit: Matus Goljer <address@hidden>
[-lambda] test all match-forms before converting to regular lambda
---
dash.el | 3 +--
dev/examples.el | 4 +++-
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/dash.el b/dash.el
index 92fadbc..7e7db7e 100644
--- a/dash.el
+++ b/dash.el
@@ -1453,8 +1453,7 @@ See `-let' for the description of destructuring
mechanism."
((not (consp match-form))
(error "match-form must be a list"))
;; no destructuring, so just return regular lambda to make things faster
- ((and (consp match-form)
- (symbolp (car match-form)))
+ ((-all? 'symbolp match-form)
`(lambda ,match-form ,@body))
(t
(let* ((inputs (--map-indexed (list it (make-symbol (format "input%d"
it-index))) match-form)))
diff --git a/dev/examples.el b/dev/examples.el
index 55f3572..aa171f4 100644
--- a/dev/examples.el
+++ b/dev/examples.el
@@ -766,7 +766,9 @@ new list."
(-map (-lambda ((&plist :a a :b b)) (+ a b)) '((:a 1 :b 2) (:a 3 :b 4) (:a
5 :b 6))) => '(3 7 11)
(-map (-lambda (x) (let ((k (car x)) (v (cadr x))) (+ k v))) '((1 2) (3 4)
(5 6))) => '(3 7 11)
(funcall (-lambda ((a) (b)) (+ a b)) '(1 2 3) '(4 5 6)) => 5
- (condition-case nil (progn (-lambda a t) (error "previous form should
error")) (error t)) => t))
+ (condition-case nil (progn (-lambda a t) (error "previous form should
error")) (error t)) => t
+ (funcall (-lambda (a b) (+ a b)) 1 2) => 3
+ (funcall (-lambda (a (b c)) (+ a b c)) 1 (list 2 3)) => 6))
(def-example-group "Side-effects"
"Functions iterating over lists for side-effect only."
- [elpa] externals/dash f0831d3 339/426: Add -lambda, (continued)
- [elpa] externals/dash f0831d3 339/426: Add -lambda, Phillip Lord, 2015/08/04
- [elpa] externals/dash 9ebcce6 325/426: Add some niceties to font-locking of examples, Phillip Lord, 2015/08/04
- [elpa] externals/dash 6fc652d 331/426: Merge pull request #95 from Wilfred/shallow-copy-function, Phillip Lord, 2015/08/04
- [elpa] externals/dash 5637bd6 322/426: Add alias from -find to -first, Phillip Lord, 2015/08/04
- [elpa] externals/dash a4be872 338/426: Add `-let` and `-let*`, Phillip Lord, 2015/08/04
- [elpa] externals/dash 947ffda 341/426: Add support for &rest match for non-list sequences (like . for improper lists), Phillip Lord, 2015/08/04
- [elpa] externals/dash 9065e1b 344/426: [-let] Final cdr shift optimization, Phillip Lord, 2015/08/04
- [elpa] externals/dash d37947a 332/426: Add -tree-seq, Phillip Lord, 2015/08/04
- [elpa] externals/dash 51a0c9f 350/426: [-let] Fix expansion of _ symbols in vector matcher, Phillip Lord, 2015/08/04
- [elpa] externals/dash 8f9fc41 340/426: Add support for multiple input arguments to -lambda, Phillip Lord, 2015/08/04
- [elpa] externals/dash 7f2b3c7 343/426: [-lambda] test all match-forms before converting to regular lambda,
Phillip Lord <=
- [elpa] externals/dash 6f81492 346/426: [-lambda] Better error-handling, Phillip Lord, 2015/08/04
- [elpa] externals/dash 6f0bb7d 348/426: [-let] Fix dynamic scoping issue, Phillip Lord, 2015/08/04
- [elpa] externals/dash f939201 347/426: [-let] Optimize shifting/binding of unused _ places, Phillip Lord, 2015/08/04
- [elpa] externals/dash c1d555b 355/426: [-let] Optimize single-binding of vectors and kv, Phillip Lord, 2015/08/04
- [elpa] externals/dash edb1e31 356/426: [-let] Add more tests, Phillip Lord, 2015/08/04
- [elpa] externals/dash 9ec1a02 354/426: [-let] Abstract the _ test into a function, Phillip Lord, 2015/08/04
- [elpa] externals/dash 31f321a 358/426: Release 2.9.0, Phillip Lord, 2015/08/04
- [elpa] externals/dash 40849a7 357/426: [-let] Remove stale comment, Phillip Lord, 2015/08/04
- [elpa] externals/dash 2626840 336/426: Add -fixfn, Phillip Lord, 2015/08/04
- [elpa] externals/dash 2436bf8 361/426: Add debug declaration on -lambda, Phillip Lord, 2015/08/04