iterator-promise
v0.1.1 iterator load loader promise
iterator-promise
Iterate over a stack of functions.
This module works with loader-cache but it can also used by itself or with other modules.
Install
Install with npm
$ npm i iterator-promise --save
Usage
var iterator = require('iterator-promise');
API
iterator
Iterate over a stack of promise functions passing the results of each function to the next function in the stack.
Params
stack
{Array}: Array of functions to call.returns
{Function}: Returns a function that will iterator over the given stack of functions.
var fs = require('fs');
var iterator = require('iterator-promise');
var Promise = require('bluebird');
Promise.promisifyAll(fs);
var stack = [
Promise.method(function (fp) {
return fs.readFileAsync(fp, 'utf8');
}),
Promise.method(function (contents) {
return JSON.parse(contents);
})
];
var readJSON = iterator(stack);
readJSON('./package.json')
.then(function (pkg) {
pkg.a = 'b';
return pkg;
})
.then(function (pkg) {
pkg.c = 'd';
return pkg;
})
.then(function (pkg) {
console.log(pkg);
});
Related projects
- bluebird: Full featured Promises/A+ implementation with exceptionally good performance
- iterator-async: Iterate over a stack of async functions.
- iterator-streams: Iterator over a stack of functions.
- iterator-sync: Iterate over a stack of functions.
- loader-cache: Register loader functions that dynamically read, parse or otherwise transform file contents when the name… more
Running tests
Install dev dependencies:
$ npm i -d && npm test
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue
Author
Brian Woodward
License
Copyright © 2015 Brian Woodward Released under the MIT license.
This file was generated by verb-cli on June 19, 2015.
npm i iterator-promise
Metadata
- MIT
- >=0.10.0
- Brian Woodward
- released 6/19/2015