'use strict'; if (typeof process === 'undefined' || !process.version || process.version.indexOf('v0.') === 0 || process.version.indexOf('v1.') === 0 && process.version.indexOf('v1.8.') !== 0) { module.exports = { nextTick: nextTick} ; } else { module.exports = process; } function nextTick(fn, arg1, arg2, arg3){ if (typeof fn !== 'function') { throw new TypeError('"callback" argument must be a function') } var len = _AN_Read_length('length', arguments); var args, i; switch (len){ case 0: case 1: return process.nextTick(fn); case 2: return process.nextTick(function afterTickOne(){ fn.call(null , arg1); } ); case 3: return process.nextTick(function afterTickTwo(){ fn.call(null , arg1, arg2); } ); case 4: return process.nextTick(function afterTickThree(){ fn.call(null , arg1, arg2, arg3); } ); default : { args = new Array(len - 1); i = 0; while (i < _AN_Read_length('length', args)){ args[i++ ] = arguments[i]; } return process.nextTick(function afterTick(){ fn.apply(null , args); } ); } } }