Sha256: 7a2437729c0feaeeb870c6ecdaf13bdb2bb169d9fe6a52c3d39df12616f3be1b

Contents?: true

Size: 1.01 KB

Versions: 62

Compression:

Stored size: 1.01 KB

Contents

/* */ 
(function(process) {
  var global = require('./$.global'),
      macrotask = require('./$.task').set,
      Observer = global.MutationObserver || global.WebKitMutationObserver,
      process = global.process,
      head,
      last,
      notify;
  var flush = function() {
    while (head) {
      head.fn.call();
      head = head.next;
    }
    last = undefined;
  };
  if (require('./$.cof')(process) == 'process') {
    notify = function() {
      process.nextTick(flush);
    };
  } else if (Observer) {
    var toggle = 1,
        node = document.createTextNode('');
    new Observer(flush).observe(node, {characterData: true});
    notify = function() {
      node.data = toggle = -toggle;
    };
  } else {
    notify = function() {
      macrotask.call(global, flush);
    };
  }
  module.exports = function asap(fn) {
    var task = {
      fn: fn,
      next: undefined
    };
    if (last)
      last.next = task;
    if (!head) {
      head = task;
      notify();
    }
    last = task;
  };
})(require('process'));

Version data entries

62 entries across 31 versions & 1 rubygems

Version Path
sequenceserver-3.1.3 public/vendor/npm/core-js@1.1.2/modules/$.microtask.js
sequenceserver-3.1.3 public/vendor/npm/core-js@1.1.2/library/modules/$.microtask.js
sequenceserver-3.1.2 public/vendor/npm/core-js@1.1.2/library/modules/$.microtask.js
sequenceserver-3.1.2 public/vendor/npm/core-js@1.1.2/modules/$.microtask.js
sequenceserver-3.1.1 public/vendor/npm/core-js@1.1.2/library/modules/$.microtask.js
sequenceserver-3.1.1 public/vendor/npm/core-js@1.1.2/modules/$.microtask.js
sequenceserver-3.1.0 public/vendor/npm/core-js@1.1.2/library/modules/$.microtask.js
sequenceserver-3.1.0 public/vendor/npm/core-js@1.1.2/modules/$.microtask.js
sequenceserver-3.0.1 public/vendor/npm/core-js@1.1.2/library/modules/$.microtask.js
sequenceserver-3.0.1 public/vendor/npm/core-js@1.1.2/modules/$.microtask.js
sequenceserver-3.0 public/vendor/npm/core-js@1.1.2/modules/$.microtask.js
sequenceserver-3.0 public/vendor/npm/core-js@1.1.2/library/modules/$.microtask.js
sequenceserver-2.2.0 public/vendor/npm/core-js@1.1.2/modules/$.microtask.js
sequenceserver-2.2.0 public/vendor/npm/core-js@1.1.2/library/modules/$.microtask.js
sequenceserver-2.1.0 public/vendor/npm/core-js@1.1.2/library/modules/$.microtask.js
sequenceserver-2.1.0 public/vendor/npm/core-js@1.1.2/modules/$.microtask.js
sequenceserver-2.0.0 public/vendor/npm/core-js@1.1.2/library/modules/$.microtask.js
sequenceserver-2.0.0 public/vendor/npm/core-js@1.1.2/modules/$.microtask.js
sequenceserver-2.0.0.rc8 public/vendor/npm/core-js@1.1.2/library/modules/$.microtask.js
sequenceserver-2.0.0.rc8 public/vendor/npm/core-js@1.1.2/modules/$.microtask.js