aboutsummaryrefslogtreecommitdiff
path: root/node_modules/immediate/lib/index.js
diff options
context:
space:
mode:
authorruki <waruqi@gmail.com>2018-11-08 00:43:05 +0800
committerruki <waruqi@gmail.com>2018-11-07 22:18:30 +0800
commit89e95b3f143682ed9a006991bacf45c9dcba4818 (patch)
tree4f44cf41b828577d583890bdd5a1c31e8491a6ba /node_modules/immediate/lib/index.js
parentaa7f0199255277949790b41c56e8ec97dd4f0da4 (diff)
downloadxmake-docs-vuepress.tar.gz
xmake-docs-vuepress.zip
remove node_modulesvuepress
Diffstat (limited to 'node_modules/immediate/lib/index.js')
-rw-r--r--node_modules/immediate/lib/index.js96
1 files changed, 0 insertions, 96 deletions
diff --git a/node_modules/immediate/lib/index.js b/node_modules/immediate/lib/index.js
deleted file mode 100644
index 90c006ad..00000000
--- a/node_modules/immediate/lib/index.js
+++ /dev/null
@@ -1,96 +0,0 @@
-'use strict';
-var types = [
- require('./nextTick'),
- require('./mutation.js'),
- require('./messageChannel'),
- require('./stateChange'),
- require('./timeout')
-];
-var draining;
-var currentQueue;
-var queueIndex = -1;
-var queue = [];
-var scheduled = false;
-function cleanUpNextTick() {
- if (!draining || !currentQueue) {
- return;
- }
- draining = false;
- if (currentQueue.length) {
- queue = currentQueue.concat(queue);
- } else {
- queueIndex = -1;
- }
- if (queue.length) {
- nextTick();
- }
-}
-
-//named nextTick for less confusing stack traces
-function nextTick() {
- if (draining) {
- return;
- }
- scheduled = false;
- draining = true;
- var len = queue.length;
- var timeout = setTimeout(cleanUpNextTick);
- while (len) {
- currentQueue = queue;
- queue = [];
- while (currentQueue && ++queueIndex < len) {
- currentQueue[queueIndex].run();
- }
- queueIndex = -1;
- len = queue.length;
- }
- currentQueue = null;
- queueIndex = -1;
- draining = false;
- clearTimeout(timeout);
-}
-var scheduleDrain;
-var i = -1;
-var len = types.length;
-while (++i < len) {
- if (types[i] && types[i].test && types[i].test()) {
- scheduleDrain = types[i].install(nextTick);
- break;
- }
-}
-// v8 likes predictible objects
-function Item(fun, array) {
- this.fun = fun;
- this.array = array;
-}
-Item.prototype.run = function () {
- var fun = this.fun;
- var array = this.array;
- switch (array.length) {
- case 0:
- return fun();
- case 1:
- return fun(array[0]);
- case 2:
- return fun(array[0], array[1]);
- case 3:
- return fun(array[0], array[1], array[2]);
- default:
- return fun.apply(null, array);
- }
-
-};
-module.exports = immediate;
-function immediate(task) {
- var args = new Array(arguments.length - 1);
- if (arguments.length > 1) {
- for (var i = 1; i < arguments.length; i++) {
- args[i - 1] = arguments[i];
- }
- }
- queue.push(new Item(task, args));
- if (!scheduled && !draining) {
- scheduled = true;
- scheduleDrain();
- }
-}