Skip to content

jimkang/call-next-tick

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

call-next-tick

(Formerly conform-async.)

A handy wrapper for process.nextTick that you can use to call a callback on the next tick instead of immediate, even though you have the results for callback. Here's why you'd want to do this (scroll to "It is very important...").

Installation

npm install call-next-tick

Usage

var callNextTick = require('call-next-tick');

// callback expects to be called async.
function getResultForSpecialSituation(id, callback) {
	var error = null;
	var constantResult = 'This is always the result';
	callNextTick(callback, error, constantResult);
}

Instead of:

// callback expects to be called async.
function getResultForSpecialSituation(id, callback) {
	var error = null;
	var constantResult = 'This is always the result';
	process.nextTick(function doTheCallWithTheParamsFromTheClosure() {
		callback(error, constantResult);
	});
	callNextTick(callback, error, constantResult);
}	

So, here's the implementation:

	function makeCallbackCaller(cb, error, result) {
		return function callbackCall() {
			cb(error, result);
		};
	}

	function callNextTick(cb, error, result) {
		process.nextTick(makeCallbackCaller(cb, error, result));
	}

It's not much. It's just something I don't want to copy from project to project. :)

Tests

Run tests with make test.

License

MIT.

About

Calls callbacks on next tick so you can avoid craziness from code that expects async to not execute immediately. (Formerly conform-async.)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published