@inst/vscode-bin-darwin
Version:
BINARY ONLY - VSCode binary deployment for macOS
62 lines (60 loc) • 1.87 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var EventEmitter = (function () {
function EventEmitter() {
this._events = this._events || {};
}
EventEmitter.prototype.on = function (type, listener) {
this._events[type] = this._events[type] || [];
this._events[type].push(listener);
};
EventEmitter.prototype.off = function (type, listener) {
if (!this._events[type]) {
return;
}
var obj = this._events[type];
var i = obj.length;
while (i--) {
if (obj[i] === listener || obj[i].listener === listener) {
obj.splice(i, 1);
return;
}
}
};
EventEmitter.prototype.removeAllListeners = function (type) {
if (this._events[type]) {
delete this._events[type];
}
};
EventEmitter.prototype.once = function (type, listener) {
function on() {
var args = Array.prototype.slice.call(arguments);
this.off(type, on);
listener.apply(this, args);
}
on.listener = listener;
this.on(type, on);
};
EventEmitter.prototype.emit = function (type) {
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
args[_i - 1] = arguments[_i];
}
if (!this._events[type]) {
return;
}
var obj = this._events[type];
for (var i = 0; i < obj.length; i++) {
obj[i].apply(this, args);
}
};
EventEmitter.prototype.listeners = function (type) {
return this._events[type] || [];
};
EventEmitter.prototype.destroy = function () {
this._events = {};
};
return EventEmitter;
}());
exports.EventEmitter = EventEmitter;
//# sourceMappingURL=EventEmitter.js.map