UNPKG

tc39-weakrefs-shim

Version:
16 lines 639 B
import makeTaskQueue from "./taskQueue.js"; export const available = typeof MessageChannel == "function"; export function shim() { if (!available) throw new Error("MessageChannel not available"); function register(immediateId) { channel.port2.postMessage(immediateId); return true; } const { set, clear, process } = makeTaskQueue(register, true); const channel = new MessageChannel(); channel.port1.addEventListener("message", (event) => process(event.data)); channel.port1.start(); return { setImmediate: set, clearImmediate: clear }; } //# sourceMappingURL=setImmediate.shim.js.map