summaryrefslogtreecommitdiff
path: root/lib/reduce/index.js
blob: 541becbe84e12f00ab2762b173fd9a5e9b75aef5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
'use strict';

var eachOfSeries = require('async.eachofseries');

module.exports = function reduce(arr, memo, iterator, cb) {
    eachOfSeries(arr, function(x, i, cb) {
        iterator(memo, x, function(err, v) {
            memo = v;
            cb(err);
        });
    }, function(err) {
        cb(err, memo);
    });
};