summaryrefslogtreecommitdiff
path: root/deps/npm/node_modules/asynckit/lib/abort.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/npm/node_modules/asynckit/lib/abort.js')
-rw-r--r--deps/npm/node_modules/asynckit/lib/abort.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/deps/npm/node_modules/asynckit/lib/abort.js b/deps/npm/node_modules/asynckit/lib/abort.js
new file mode 100644
index 0000000000..114367e5fb
--- /dev/null
+++ b/deps/npm/node_modules/asynckit/lib/abort.js
@@ -0,0 +1,29 @@
+// API
+module.exports = abort;
+
+/**
+ * Aborts leftover active jobs
+ *
+ * @param {object} state - current state object
+ */
+function abort(state)
+{
+ Object.keys(state.jobs).forEach(clean.bind(state));
+
+ // reset leftover jobs
+ state.jobs = {};
+}
+
+/**
+ * Cleans up leftover job by invoking abort function for the provided job id
+ *
+ * @this state
+ * @param {string|number} key - job id to abort
+ */
+function clean(key)
+{
+ if (typeof this.jobs[key] == 'function')
+ {
+ this.jobs[key]();
+ }
+}