Library for working with asynchronous code using yield and generators
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs
test
.eslintrc
.gitignore
.travis.yml
CHANGELOG.md
LICENSE
README.md
index.js
karma.conf.js
mocha.vars.js
package.json

README.md

var o_o = yield (yield)(); Build Status

NPM

Double yield ( yield-yield ) helps you to organize asynchronously written code by structuring it sequentially without need to wrap or change your existing code.

var superagent = require('superagent');
var o_o = require('yield-yield');
var fs = require('fs');

module.exports = o_o(function *() {

    //
    // Read file from fs
    //
    try {
      var content = yield fs.readFile('/etc/hosts', { encoding: 'utf8'}, yield);
    } catch (e) {
      console.log('Unable to read file', e);
    }

    //
    // Pause for a second
    //
    yield setTimeout(yield, 1000);

    //
    // Make the request to the server
    //
    var response = yield superagent
      .get('/api/pet')
      .end(yield);

    //
    // Do some more  async stuff
    //

});

Read full Documentation