diff options
Diffstat (limited to 'node_modules/immediate/lib')
| -rw-r--r-- | node_modules/immediate/lib/index.js | 96 | ||||
| -rw-r--r-- | node_modules/immediate/lib/messageChannel.js | 18 | ||||
| -rw-r--r-- | node_modules/immediate/lib/mutation.js | 22 | ||||
| -rw-r--r-- | node_modules/immediate/lib/nextTick.js | 11 | ||||
| -rw-r--r-- | node_modules/immediate/lib/stateChange.js | 24 | ||||
| -rw-r--r-- | node_modules/immediate/lib/timeout.js | 10 |
6 files changed, 0 insertions, 181 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(); - } -} diff --git a/node_modules/immediate/lib/messageChannel.js b/node_modules/immediate/lib/messageChannel.js deleted file mode 100644 index a6ce360b..00000000 --- a/node_modules/immediate/lib/messageChannel.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; - -exports.test = function () { - if (global.setImmediate) { - // we can only get here in IE10 - // which doesn't handel postMessage well - return false; - } - return typeof global.MessageChannel !== 'undefined'; -}; - -exports.install = function (func) { - var channel = new global.MessageChannel(); - channel.port1.onmessage = func; - return function () { - channel.port2.postMessage(0); - }; -};
\ No newline at end of file diff --git a/node_modules/immediate/lib/mutation.js b/node_modules/immediate/lib/mutation.js deleted file mode 100644 index f1597412..00000000 --- a/node_modules/immediate/lib/mutation.js +++ /dev/null @@ -1,22 +0,0 @@ -'use strict'; -//based off rsvp https://github.com/tildeio/rsvp.js -//license https://github.com/tildeio/rsvp.js/blob/master/LICENSE -//https://github.com/tildeio/rsvp.js/blob/master/lib/rsvp/asap.js - -var Mutation = global.MutationObserver || global.WebKitMutationObserver; - -exports.test = function () { - return Mutation; -}; - -exports.install = function (handle) { - var called = 0; - var observer = new Mutation(handle); - var element = global.document.createTextNode(''); - observer.observe(element, { - characterData: true - }); - return function () { - element.data = (called = ++called % 2); - }; -};
\ No newline at end of file diff --git a/node_modules/immediate/lib/nextTick.js b/node_modules/immediate/lib/nextTick.js deleted file mode 100644 index 6acc0d76..00000000 --- a/node_modules/immediate/lib/nextTick.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; -exports.test = function () { - // Don't get fooled by e.g. browserify environments. - return (typeof process !== 'undefined') && !process.browser; -}; - -exports.install = function (func) { - return function () { - process.nextTick(func); - }; -}; diff --git a/node_modules/immediate/lib/stateChange.js b/node_modules/immediate/lib/stateChange.js deleted file mode 100644 index 5b2316d7..00000000 --- a/node_modules/immediate/lib/stateChange.js +++ /dev/null @@ -1,24 +0,0 @@ -'use strict'; - -exports.test = function () { - return 'document' in global && 'onreadystatechange' in global.document.createElement('script'); -}; - -exports.install = function (handle) { - return function () { - - // Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted - // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called. - var scriptEl = global.document.createElement('script'); - scriptEl.onreadystatechange = function () { - handle(); - - scriptEl.onreadystatechange = null; - scriptEl.parentNode.removeChild(scriptEl); - scriptEl = null; - }; - global.document.documentElement.appendChild(scriptEl); - - return handle; - }; -};
\ No newline at end of file diff --git a/node_modules/immediate/lib/timeout.js b/node_modules/immediate/lib/timeout.js deleted file mode 100644 index bd97fd2f..00000000 --- a/node_modules/immediate/lib/timeout.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; -exports.test = function () { - return true; -}; - -exports.install = function (t) { - return function () { - setTimeout(t, 0); - }; -};
\ No newline at end of file |
