index.js 514 B

123456789101112131415161718192021222324
  1. function ready(flagOrFunction) {
  2. this._ready = !!this._ready;
  3. this._readyCallbacks = this._readyCallbacks || [];
  4. if ('function' === typeof(flagOrFunction)) {
  5. this._readyCallbacks.push(flagOrFunction);
  6. } else {
  7. this._ready = !!flagOrFunction;
  8. }
  9. if (this._ready) {
  10. this._readyCallbacks.splice(0, Infinity).forEach(function(callback) {
  11. process.nextTick(callback);
  12. });
  13. }
  14. }
  15. function mixin(object) {
  16. object.ready = ready;
  17. }
  18. module.exports = mixin;
  19. module.exports.mixin = mixin;