Newer
Older
CVSS_3.0_GUI / dist / CVSS_3.0_Calc-1.0.0-linux-x64 / node_modules / nwjs-builder-phoenix / node_modules / request / node_modules / form-data / node_modules / asynckit / lib / async.js
root on 7 May 2019 599 bytes Initial commit
  1. var defer = require('./defer.js');
  2.  
  3. // API
  4. module.exports = async;
  5.  
  6. /**
  7. * Runs provided callback asynchronously
  8. * even if callback itself is not
  9. *
  10. * @param {function} callback - callback to invoke
  11. * @returns {function} - augmented callback
  12. */
  13. function async(callback)
  14. {
  15. var isAsync = false;
  16.  
  17. // check if async happened
  18. defer(function() { isAsync = true; });
  19.  
  20. return function async_callback(err, result)
  21. {
  22. if (isAsync)
  23. {
  24. callback(err, result);
  25. }
  26. else
  27. {
  28. defer(function nextTick_callback()
  29. {
  30. callback(err, result);
  31. });
  32. }
  33. };
  34. }
Buy Me A Coffee