diff options
Diffstat (limited to 'node_modules/rxjs/dist/esm/internal/util/Immediate.js')
| -rw-r--r-- | node_modules/rxjs/dist/esm/internal/util/Immediate.js | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/node_modules/rxjs/dist/esm/internal/util/Immediate.js b/node_modules/rxjs/dist/esm/internal/util/Immediate.js new file mode 100644 index 0000000..8633e1d --- /dev/null +++ b/node_modules/rxjs/dist/esm/internal/util/Immediate.js @@ -0,0 +1,30 @@ +let nextHandle = 1; +let resolved; +const activeHandles = {}; +function findAndClearHandle(handle) { + if (handle in activeHandles) { + delete activeHandles[handle]; + return true; + } + return false; +} +export const Immediate = { + setImmediate(cb) { + const handle = nextHandle++; + activeHandles[handle] = true; + if (!resolved) { + resolved = Promise.resolve(); + } + resolved.then(() => findAndClearHandle(handle) && cb()); + return handle; + }, + clearImmediate(handle) { + findAndClearHandle(handle); + }, +}; +export const TestTools = { + pending() { + return Object.keys(activeHandles).length; + } +}; +//# sourceMappingURL=Immediate.js.map
\ No newline at end of file |
