UNPKG

@dioxide-js/silas

Version:

RPC utility for Silas

48 lines (40 loc) 891 B
import { __require as requireDefer } from './defer.mjs'; var async_1; var hasRequiredAsync; function requireAsync () { if (hasRequiredAsync) return async_1; hasRequiredAsync = 1; var defer = requireDefer(); // API async_1 = 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); }); } }; } return async_1; } export { requireAsync as __require }; //# sourceMappingURL=async.mjs.map