npm

Ready to take your JavaScript development to the next level? Meet npm Enterprise - the ultimate in enterprise JavaScript.Learn more »

callback-count

0.2.0 • Public • Published

callback-count Build Status

Count callbacks before continuing, tiny control flow helper, allows dynamic counting.

Flow control

var callbackCount = require('callback-count');
var counter = callbackCount(done);
 
setTimeout(counter.inc().next, 100);
setTimeout(counter.inc().next, 100);
 
function done (err) {
  console.log('finished.');
}

.inc() allows you to dynamically update the number of callbacks you are expecting.

var callbackCount = require('callback-count');
var counter = callbackCount(done);
 
counter.inc().inc().inc();
counter.next().next().next();
 
function done (err) {
  console.log('finished.');
}

The constructor can take an initial value for the count expected

var callbackCount = require('callback-count');
var counter = callbackCount(3, done);
 
counter.next().next().next();
 
function done (err) {
  console.log('finished.');
}

.next() decrements the count and callsback when the count has reached 0

var counter = createCounter(3, done);
 
counter.next().next().next();
 
function done (err) {
  console.log(counter.count); // 0
  console.log('finished.');
}

if .next() receives an error it will callback immediately

var counter = createCounter(3, done);
 
counter.next(new Error('boom'));
 
function done (err) {
  console.log(err.message); // boom
}

License: MIT

install

npm i callback-count

Downloadsweekly downloads

1,467

version

0.2.0

license

MIT

homepage

github.com

repository

Gitgithub

last publish

collaborators

  • avatar
Report a vulnerability