installed pty
[VSoRC/.git] / node_modules / node-pty / lib / eventEmitter2.js
1 "use strict";
2 /**
3  * Copyright (c) 2019, Microsoft Corporation (MIT License).
4  */
5 Object.defineProperty(exports, "__esModule", { value: true });
6 var EventEmitter2 = /** @class */ (function () {
7     function EventEmitter2() {
8         this._listeners = [];
9     }
10     Object.defineProperty(EventEmitter2.prototype, "event", {
11         get: function () {
12             var _this = this;
13             if (!this._event) {
14                 this._event = function (listener) {
15                     _this._listeners.push(listener);
16                     var disposable = {
17                         dispose: function () {
18                             for (var i = 0; i < _this._listeners.length; i++) {
19                                 if (_this._listeners[i] === listener) {
20                                     _this._listeners.splice(i, 1);
21                                     return;
22                                 }
23                             }
24                         }
25                     };
26                     return disposable;
27                 };
28             }
29             return this._event;
30         },
31         enumerable: true,
32         configurable: true
33     });
34     EventEmitter2.prototype.fire = function (data) {
35         var queue = [];
36         for (var i = 0; i < this._listeners.length; i++) {
37             queue.push(this._listeners[i]);
38         }
39         for (var i = 0; i < queue.length; i++) {
40             queue[i].call(undefined, data);
41         }
42     };
43     return EventEmitter2;
44 }());
45 exports.EventEmitter2 = EventEmitter2;
46 //# sourceMappingURL=eventEmitter2.js.map