Giant blob of minor changes
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / rxjs / internal / operators / count.js
1 "use strict";
2 var __extends = (this && this.__extends) || (function () {
3     var extendStatics = function (d, b) {
4         extendStatics = Object.setPrototypeOf ||
5             ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6             function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
7         return extendStatics(d, b);
8     }
9     return function (d, b) {
10         extendStatics(d, b);
11         function __() { this.constructor = d; }
12         d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
13     };
14 })();
15 Object.defineProperty(exports, "__esModule", { value: true });
16 var Subscriber_1 = require("../Subscriber");
17 function count(predicate) {
18     return function (source) { return source.lift(new CountOperator(predicate, source)); };
19 }
20 exports.count = count;
21 var CountOperator = (function () {
22     function CountOperator(predicate, source) {
23         this.predicate = predicate;
24         this.source = source;
25     }
26     CountOperator.prototype.call = function (subscriber, source) {
27         return source.subscribe(new CountSubscriber(subscriber, this.predicate, this.source));
28     };
29     return CountOperator;
30 }());
31 var CountSubscriber = (function (_super) {
32     __extends(CountSubscriber, _super);
33     function CountSubscriber(destination, predicate, source) {
34         var _this = _super.call(this, destination) || this;
35         _this.predicate = predicate;
36         _this.source = source;
37         _this.count = 0;
38         _this.index = 0;
39         return _this;
40     }
41     CountSubscriber.prototype._next = function (value) {
42         if (this.predicate) {
43             this._tryPredicate(value);
44         }
45         else {
46             this.count++;
47         }
48     };
49     CountSubscriber.prototype._tryPredicate = function (value) {
50         var result;
51         try {
52             result = this.predicate(value, this.index++, this.source);
53         }
54         catch (err) {
55             this.destination.error(err);
56             return;
57         }
58         if (result) {
59             this.count++;
60         }
61     };
62     CountSubscriber.prototype._complete = function () {
63         this.destination.next(this.count);
64         this.destination.complete();
65     };
66     return CountSubscriber;
67 }(Subscriber_1.Subscriber));
68 //# sourceMappingURL=count.js.map