3
0
Fork 0
mirror of https://gitea.com/actions/setup-python.git synced 2024-11-22 18:19:35 +01:00
setup-python/node_modules/asynckit/lib/async.js
Danny McCormick 39c08a0eaa Initial pass
2019-06-26 21:12:00 -04:00

34 lines
599 B
JavaScript

var defer = require('./defer.js');
// API
module.exports = async;
/**
* Runs provided callback asynchronously
* even if callback itself is not
*
* @param {function} callback - callback to invoke
* @returns {function} - augmented callback
*/
function async(callback)
{
var isAsync = false;
// check if async happened
defer(function() { isAsync = true; });
return function async_callback(err, result)
{
if (isAsync)
{
callback(err, result);
}
else
{
defer(function nextTick_callback()
{
callback(err, result);
});
}
};
}