diff options
author | Graeme Yeates <yeatesgraeme@gmail.com> | 2015-07-03 11:27:42 -0400 |
---|---|---|
committer | Graeme Yeates <yeatesgraeme@gmail.com> | 2015-07-03 19:49:00 -0400 |
commit | 6ef3167ea5e37a0e9c9589102fb0a36f7eb37ba4 (patch) | |
tree | 061d66c3b0ba84708b7b15b5665f25c921aea3f3 /lib | |
parent | e3f6537560e34cd8748214dc762bf18189e9fb54 (diff) | |
download | async-6ef3167ea5e37a0e9c9589102fb0a36f7eb37ba4.tar.gz |
Add filter and reject limit
Diffstat (limited to 'lib')
-rw-r--r-- | lib/async.js | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/lib/async.js b/lib/async.js index f6ef7c1..cbd2678 100644 --- a/lib/async.js +++ b/lib/async.js @@ -335,8 +335,8 @@ return fn(async.eachOf, obj, iterator, callback); }; } - function doParallelLimit(limit, fn) { - return function (obj, iterator, callback) { + function doParallelLimit(fn) { + return function (obj, limit, iterator, callback) { return fn(_eachOfLimit(limit), obj, iterator, callback); }; } @@ -361,9 +361,7 @@ async.map = doParallel(_asyncMap); async.mapSeries = doSeries(_asyncMap); - async.mapLimit = function (arr, limit, iterator, callback) { - return doParallelLimit(limit, _asyncMap)(arr, iterator, callback); - }; + async.mapLimit = doParallelLimit(_asyncMap); // reduce only has a series version, as doing reduce in parallel won't // work in many situations. @@ -409,6 +407,9 @@ async.select = async.filter = doParallel(_filter); + async.selectLimit = + async.filterLimit = doParallelLimit(_filter); + async.selectSeries = async.filterSeries = doSeries(_filter); @@ -420,6 +421,7 @@ }, callback); } async.reject = doParallel(_reject); + async.rejectLimit = doParallelLimit(_reject); async.rejectSeries = doSeries(_reject); function _createTester(eachfn, check, getResult) { |