corrade-nucleus-nucleons
/compass/005_compass/compass/node_modules/array-series/index.js |
@@ -0,0 +1,34 @@ |
module.exports = function series(fns, context, callback) { |
if (!callback) { |
if (typeof context === 'function') { |
callback = context |
context = null |
} else { |
callback = noop |
} |
} |
|
if (!(fns && fns.length)) return callback(); |
|
fns = fns.slice(0) |
|
var call = context |
? function () { |
fns.length |
? fns.shift().call(context, next) |
: callback() |
} |
: function () { |
fns.length |
? fns.shift()(next) |
: callback() |
} |
|
call() |
|
function next(err) { |
err ? callback(err) : call() |
} |
} |
|
function noop() {} |