iterator-promise

    0.1.1 • Public • Published

    iterator-promise NPM version Build Status

    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.

    Install

    npm i iterator-promise

    DownloadsWeekly Downloads

    6

    Version

    0.1.1

    License

    MIT

    Last publish

    Collaborators

    • jonschlinkert
    • doowb