@rimbu/common 0.10.2 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -353,7 +353,7 @@ var AsyncReducer;
353
353
  */
354
354
  AsyncReducer.count = function (pred) {
355
355
  if (undefined === pred)
356
- return createMono(0, function (_, __, i) { return i + 1; });
356
+ return createOutput(0, function (_, __, i) { return i + 1; });
357
357
  return createOutput(0, function (state, next, i) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
358
358
  return tslib_1.__generator(this, function (_a) {
359
359
  switch (_a.label) {
@@ -680,16 +680,18 @@ var AsyncReducer;
680
680
  }
681
681
  AsyncReducer.toJSObject = toJSObject;
682
682
  /**
683
- * Returns a `Reducer` that combines multiple input `reducers` by providing input values to all of them and collecting the outputs in an array.
683
+ * Returns an `AsyncReducer` that combines multiple input `reducers` by providing input values to all of them and collecting the outputs in an array.
684
684
  * @param reducers - 2 or more reducers to combine
685
685
  * @example
686
686
  * ```ts
687
- * const red = Reducer.combine(Reducer.sum, Reducer.average)
688
- * console.log(Stream.range({amount: 9 }).reduce(red))
687
+ * const red = AsyncReducer.combineArr(AsyncReducer.sum, AsyncReducer.average)
688
+ *
689
+ * await AsyncStream.from(Stream.range({ amount: 9 }))
690
+ * .reduce(red)
689
691
  * // => [36, 4]
690
692
  * ```
691
693
  */
692
- function combine() {
694
+ function combineArr() {
693
695
  var _this = this;
694
696
  var reducers = [];
695
697
  for (var _i = 0; _i < arguments.length; _i++) {
@@ -753,6 +755,118 @@ var AsyncReducer;
753
755
  return Promise.all(allState.map(function (st) { return st.reducer.stateToResult(st.state); }));
754
756
  });
755
757
  }
756
- AsyncReducer.combine = combine;
758
+ AsyncReducer.combineArr = combineArr;
759
+ /**
760
+ * Returns an `AsyncReducer` that combines multiple input `reducers` by providing input values to all of them and collecting the outputs in the shape of the given object.
761
+ * @typeparam T - the input type for all the reducers
762
+ * @typeparam R - the result object shape
763
+ * @param reducerObj - an object of keys, and reducers corresponding to those keys
764
+ * @example
765
+ * ```ts
766
+ * const red = AsyncReducer.combineObj({
767
+ * theSum: Reducer.sum,
768
+ * theAverage: Reducer.average
769
+ * });
770
+ *
771
+ * await AsyncStream.from(Stream.range({ amount: 9 }))
772
+ * .reduce(red));
773
+ * // => { theSum: 36, theAverage: 4 }
774
+ * ```
775
+ */
776
+ function combineObj(reducerObj) {
777
+ var _this = this;
778
+ var createState = function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
779
+ var entries;
780
+ var _this = this;
781
+ return tslib_1.__generator(this, function (_a) {
782
+ switch (_a.label) {
783
+ case 0: return [4 /*yield*/, Promise.all(Object.entries(reducerObj).map(function (_a) {
784
+ var _b = tslib_1.__read(_a, 2), key = _b[0], reducer = _b[1];
785
+ return tslib_1.__awaiter(_this, void 0, void 0, function () {
786
+ var result;
787
+ var _c;
788
+ return tslib_1.__generator(this, function (_d) {
789
+ switch (_d.label) {
790
+ case 0:
791
+ _c = {
792
+ reducer: reducer,
793
+ halted: false,
794
+ halt: function () {
795
+ result.halted = true;
796
+ }
797
+ };
798
+ return [4 /*yield*/, internal_1.AsyncOptLazy.toMaybePromise(reducer.init)];
799
+ case 1:
800
+ result = (_c.state = _d.sent(),
801
+ _c);
802
+ return [2 /*return*/, [key, result]];
803
+ }
804
+ });
805
+ });
806
+ }))];
807
+ case 1:
808
+ entries = _a.sent();
809
+ return [2 /*return*/, Object.fromEntries(entries)];
810
+ }
811
+ });
812
+ }); };
813
+ return create(createState, function (allState, next, index, halt) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
814
+ var anyNotHalted;
815
+ var _this = this;
816
+ return tslib_1.__generator(this, function (_a) {
817
+ switch (_a.label) {
818
+ case 0:
819
+ anyNotHalted = false;
820
+ return [4 /*yield*/, Promise.all(Object.values(allState).map(function (red) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
821
+ var _a;
822
+ return tslib_1.__generator(this, function (_b) {
823
+ switch (_b.label) {
824
+ case 0:
825
+ if (red.halted) {
826
+ return [2 /*return*/];
827
+ }
828
+ _a = red;
829
+ return [4 /*yield*/, red.reducer.next(red.state, next, index, red.halt)];
830
+ case 1:
831
+ _a.state = _b.sent();
832
+ if (!red.halted) {
833
+ anyNotHalted = true;
834
+ }
835
+ return [2 /*return*/];
836
+ }
837
+ });
838
+ }); }))];
839
+ case 1:
840
+ _a.sent();
841
+ if (!anyNotHalted) {
842
+ halt();
843
+ }
844
+ return [2 /*return*/, allState];
845
+ }
846
+ });
847
+ }); }, function (allState) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
848
+ var entries;
849
+ var _this = this;
850
+ return tslib_1.__generator(this, function (_a) {
851
+ switch (_a.label) {
852
+ case 0: return [4 /*yield*/, Promise.all(Object.entries(allState).map(function (_a) {
853
+ var _b = tslib_1.__read(_a, 2), key = _b[0], st = _b[1];
854
+ return tslib_1.__awaiter(_this, void 0, void 0, function () { var _c; return tslib_1.__generator(this, function (_d) {
855
+ switch (_d.label) {
856
+ case 0:
857
+ _c = [key];
858
+ return [4 /*yield*/, st.reducer.stateToResult(st.state)];
859
+ case 1: return [2 /*return*/, _c.concat([_d.sent()])];
860
+ }
861
+ }); });
862
+ }))];
863
+ case 1:
864
+ entries = _a.sent();
865
+ return [2 /*return*/, Object.fromEntries(entries)];
866
+ }
867
+ });
868
+ }); });
869
+ }
870
+ AsyncReducer.combineObj = combineObj;
757
871
  })(AsyncReducer = exports.AsyncReducer || (exports.AsyncReducer = {}));
758
872
  //# sourceMappingURL=async-reducer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"async-reducer.js","sourceRoot":"","sources":["../../src/async-reducer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"async-reducer.js","sourceRoot":"","sources":["../../src/async-reducer.ts"],"names":[],"mappings":"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"}
@@ -302,7 +302,7 @@ var Reducer;
302
302
  */
303
303
  Reducer.count = function (pred) {
304
304
  if (undefined === pred)
305
- return createMono(0, function (_, __, i) { return i + 1; });
305
+ return createOutput(0, function (_, __, i) { return i + 1; });
306
306
  return createOutput(0, function (state, next, i) {
307
307
  if (pred === null || pred === void 0 ? void 0 : pred(next, i))
308
308
  return state + 1;
@@ -582,12 +582,12 @@ var Reducer;
582
582
  * @param reducers - 2 or more reducers to combine
583
583
  * @example
584
584
  * ```ts
585
- * const red = Reducer.combine(Reducer.sum, Reducer.average)
585
+ * const red = Reducer.combineArr(Reducer.sum, Reducer.average)
586
586
  * console.log(Stream.range({amount: 9 }).reduce(red))
587
587
  * // => [36, 4]
588
588
  * ```
589
589
  */
590
- function combine() {
590
+ function combineArr() {
591
591
  var reducers = [];
592
592
  for (var _i = 0; _i < arguments.length; _i++) {
593
593
  reducers[_i] = arguments[_i];
@@ -611,19 +611,84 @@ var Reducer;
611
611
  var len = allState.length;
612
612
  while (++i < len) {
613
613
  var red = allState[i];
614
- if (red.halted)
614
+ if (red.halted) {
615
615
  continue;
616
+ }
616
617
  red.state = red.reducer.next(red.state, next, index, red.halt);
617
- if (!red.halted)
618
+ if (!red.halted) {
618
619
  anyNotHalted = true;
620
+ }
619
621
  }
620
- if (!anyNotHalted)
622
+ if (!anyNotHalted) {
621
623
  halt();
624
+ }
622
625
  return allState;
623
626
  }, function (allState) {
624
627
  return allState.map(function (st) { return st.reducer.stateToResult(st.state); });
625
628
  });
626
629
  }
627
- Reducer.combine = combine;
630
+ Reducer.combineArr = combineArr;
631
+ /**
632
+ * Returns a `Reducer` that combines multiple input `reducers` by providing input values to all of them and collecting the outputs in the shape of the given object.
633
+ * @typeparam T - the input type for all the reducers
634
+ * @typeparam R - the result object shape
635
+ * @param reducerObj - an object of keys, and reducers corresponding to those keys
636
+ * @example
637
+ * ```ts
638
+ * const red = Reducer.combineObj({
639
+ * theSum: Reducer.sum,
640
+ * theAverage: Reducer.average
641
+ * });
642
+ *
643
+ * Stream.range({ amount: 9 }).reduce(red);
644
+ * // => { theSum: 36, theAverage: 4 }
645
+ * ```
646
+ */
647
+ function combineObj(reducerObj) {
648
+ var createState = function () {
649
+ var allState = {};
650
+ var _loop_1 = function (key) {
651
+ var reducer = reducerObj[key];
652
+ var result = {
653
+ reducer: reducer,
654
+ halted: false,
655
+ halt: function () {
656
+ result.halted = true;
657
+ },
658
+ state: (0, internal_1.OptLazy)(reducer.init),
659
+ };
660
+ allState[key] = result;
661
+ };
662
+ for (var key in reducerObj) {
663
+ _loop_1(key);
664
+ }
665
+ return allState;
666
+ };
667
+ return create(createState, function (allState, next, index, halt) {
668
+ var anyNotHalted = false;
669
+ for (var key in allState) {
670
+ var red = allState[key];
671
+ if (red.halted) {
672
+ continue;
673
+ }
674
+ red.state = red.reducer.next(red.state, next, index, red.halt);
675
+ if (!red.halted) {
676
+ anyNotHalted = true;
677
+ }
678
+ }
679
+ if (!anyNotHalted) {
680
+ halt();
681
+ }
682
+ return allState;
683
+ }, function (allState) {
684
+ var result = {};
685
+ for (var key in allState) {
686
+ var st = allState[key];
687
+ result[key] = st.reducer.stateToResult(st.state);
688
+ }
689
+ return result;
690
+ });
691
+ }
692
+ Reducer.combineObj = combineObj;
628
693
  })(Reducer = exports.Reducer || (exports.Reducer = {}));
629
694
  //# sourceMappingURL=reducer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reducer.js","sourceRoot":"","sources":["../../src/reducer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reducer.js","sourceRoot":"","sources":["../../src/reducer.ts"],"names":[],"mappings":"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"}
@@ -268,7 +268,7 @@ export var AsyncReducer;
268
268
  */
269
269
  AsyncReducer.count = (pred) => {
270
270
  if (undefined === pred)
271
- return createMono(0, (_, __, i) => i + 1);
271
+ return createOutput(0, (_, __, i) => i + 1);
272
272
  return createOutput(0, (state, next, i) => __awaiter(this, void 0, void 0, function* () {
273
273
  if (yield (pred === null || pred === void 0 ? void 0 : pred(next, i)))
274
274
  return state + 1;
@@ -543,16 +543,18 @@ export var AsyncReducer;
543
543
  }
544
544
  AsyncReducer.toJSObject = toJSObject;
545
545
  /**
546
- * Returns a `Reducer` that combines multiple input `reducers` by providing input values to all of them and collecting the outputs in an array.
546
+ * Returns an `AsyncReducer` that combines multiple input `reducers` by providing input values to all of them and collecting the outputs in an array.
547
547
  * @param reducers - 2 or more reducers to combine
548
548
  * @example
549
549
  * ```ts
550
- * const red = Reducer.combine(Reducer.sum, Reducer.average)
551
- * console.log(Stream.range({amount: 9 }).reduce(red))
550
+ * const red = AsyncReducer.combineArr(AsyncReducer.sum, AsyncReducer.average)
551
+ *
552
+ * await AsyncStream.from(Stream.range({ amount: 9 }))
553
+ * .reduce(red)
552
554
  * // => [36, 4]
553
555
  * ```
554
556
  */
555
- function combine(...reducers) {
557
+ function combineArr(...reducers) {
556
558
  const createState = () => {
557
559
  return Promise.all(reducers.map((reducer) => __awaiter(this, void 0, void 0, function* () {
558
560
  const result = {
@@ -580,6 +582,59 @@ export var AsyncReducer;
580
582
  return allState;
581
583
  }), (allState) => Promise.all(allState.map((st) => st.reducer.stateToResult(st.state))));
582
584
  }
583
- AsyncReducer.combine = combine;
585
+ AsyncReducer.combineArr = combineArr;
586
+ /**
587
+ * Returns an `AsyncReducer` that combines multiple input `reducers` by providing input values to all of them and collecting the outputs in the shape of the given object.
588
+ * @typeparam T - the input type for all the reducers
589
+ * @typeparam R - the result object shape
590
+ * @param reducerObj - an object of keys, and reducers corresponding to those keys
591
+ * @example
592
+ * ```ts
593
+ * const red = AsyncReducer.combineObj({
594
+ * theSum: Reducer.sum,
595
+ * theAverage: Reducer.average
596
+ * });
597
+ *
598
+ * await AsyncStream.from(Stream.range({ amount: 9 }))
599
+ * .reduce(red));
600
+ * // => { theSum: 36, theAverage: 4 }
601
+ * ```
602
+ */
603
+ function combineObj(reducerObj) {
604
+ const createState = () => __awaiter(this, void 0, void 0, function* () {
605
+ const entries = yield Promise.all(Object.entries(reducerObj).map(([key, reducer]) => __awaiter(this, void 0, void 0, function* () {
606
+ const result = {
607
+ reducer,
608
+ halted: false,
609
+ halt() {
610
+ result.halted = true;
611
+ },
612
+ state: yield AsyncOptLazy.toMaybePromise(reducer.init),
613
+ };
614
+ return [key, result];
615
+ })));
616
+ return Object.fromEntries(entries);
617
+ });
618
+ return create(createState, (allState, next, index, halt) => __awaiter(this, void 0, void 0, function* () {
619
+ let anyNotHalted = false;
620
+ yield Promise.all(Object.values(allState).map((red) => __awaiter(this, void 0, void 0, function* () {
621
+ if (red.halted) {
622
+ return;
623
+ }
624
+ red.state = yield red.reducer.next(red.state, next, index, red.halt);
625
+ if (!red.halted) {
626
+ anyNotHalted = true;
627
+ }
628
+ })));
629
+ if (!anyNotHalted) {
630
+ halt();
631
+ }
632
+ return allState;
633
+ }), (allState) => __awaiter(this, void 0, void 0, function* () {
634
+ const entries = yield Promise.all(Object.entries(allState).map(([key, st]) => __awaiter(this, void 0, void 0, function* () { return [key, yield st.reducer.stateToResult(st.state)]; })));
635
+ return Object.fromEntries(entries);
636
+ }));
637
+ }
638
+ AsyncReducer.combineObj = combineObj;
584
639
  })(AsyncReducer || (AsyncReducer = {}));
585
640
  //# sourceMappingURL=async-reducer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"async-reducer.js","sourceRoot":"","sources":["../../src/async-reducer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"async-reducer.js","sourceRoot":"","sources":["../../src/async-reducer.ts"],"names":[],"mappings":"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"}
@@ -285,7 +285,7 @@ export var Reducer;
285
285
  */
286
286
  Reducer.count = (pred) => {
287
287
  if (undefined === pred)
288
- return createMono(0, (_, __, i) => i + 1);
288
+ return createOutput(0, (_, __, i) => i + 1);
289
289
  return createOutput(0, (state, next, i) => {
290
290
  if (pred === null || pred === void 0 ? void 0 : pred(next, i))
291
291
  return state + 1;
@@ -564,12 +564,12 @@ export var Reducer;
564
564
  * @param reducers - 2 or more reducers to combine
565
565
  * @example
566
566
  * ```ts
567
- * const red = Reducer.combine(Reducer.sum, Reducer.average)
567
+ * const red = Reducer.combineArr(Reducer.sum, Reducer.average)
568
568
  * console.log(Stream.range({amount: 9 }).reduce(red))
569
569
  * // => [36, 4]
570
570
  * ```
571
571
  */
572
- function combine(...reducers) {
572
+ function combineArr(...reducers) {
573
573
  const createState = () => {
574
574
  return reducers.map((reducer) => {
575
575
  const result = {
@@ -589,17 +589,79 @@ export var Reducer;
589
589
  const len = allState.length;
590
590
  while (++i < len) {
591
591
  const red = allState[i];
592
- if (red.halted)
592
+ if (red.halted) {
593
593
  continue;
594
+ }
594
595
  red.state = red.reducer.next(red.state, next, index, red.halt);
595
- if (!red.halted)
596
+ if (!red.halted) {
596
597
  anyNotHalted = true;
598
+ }
597
599
  }
598
- if (!anyNotHalted)
600
+ if (!anyNotHalted) {
599
601
  halt();
602
+ }
600
603
  return allState;
601
604
  }, (allState) => allState.map((st) => st.reducer.stateToResult(st.state)));
602
605
  }
603
- Reducer.combine = combine;
606
+ Reducer.combineArr = combineArr;
607
+ /**
608
+ * Returns a `Reducer` that combines multiple input `reducers` by providing input values to all of them and collecting the outputs in the shape of the given object.
609
+ * @typeparam T - the input type for all the reducers
610
+ * @typeparam R - the result object shape
611
+ * @param reducerObj - an object of keys, and reducers corresponding to those keys
612
+ * @example
613
+ * ```ts
614
+ * const red = Reducer.combineObj({
615
+ * theSum: Reducer.sum,
616
+ * theAverage: Reducer.average
617
+ * });
618
+ *
619
+ * Stream.range({ amount: 9 }).reduce(red);
620
+ * // => { theSum: 36, theAverage: 4 }
621
+ * ```
622
+ */
623
+ function combineObj(reducerObj) {
624
+ const createState = () => {
625
+ const allState = {};
626
+ for (const key in reducerObj) {
627
+ const reducer = reducerObj[key];
628
+ const result = {
629
+ reducer,
630
+ halted: false,
631
+ halt() {
632
+ result.halted = true;
633
+ },
634
+ state: OptLazy(reducer.init),
635
+ };
636
+ allState[key] = result;
637
+ }
638
+ return allState;
639
+ };
640
+ return create(createState, (allState, next, index, halt) => {
641
+ let anyNotHalted = false;
642
+ for (const key in allState) {
643
+ const red = allState[key];
644
+ if (red.halted) {
645
+ continue;
646
+ }
647
+ red.state = red.reducer.next(red.state, next, index, red.halt);
648
+ if (!red.halted) {
649
+ anyNotHalted = true;
650
+ }
651
+ }
652
+ if (!anyNotHalted) {
653
+ halt();
654
+ }
655
+ return allState;
656
+ }, (allState) => {
657
+ const result = {};
658
+ for (const key in allState) {
659
+ const st = allState[key];
660
+ result[key] = st.reducer.stateToResult(st.state);
661
+ }
662
+ return result;
663
+ });
664
+ }
665
+ Reducer.combineObj = combineObj;
604
666
  })(Reducer || (Reducer = {}));
605
667
  //# sourceMappingURL=reducer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reducer.js","sourceRoot":"","sources":["../../src/reducer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reducer.js","sourceRoot":"","sources":["../../src/reducer.ts"],"names":[],"mappings":"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"}
@@ -88,7 +88,8 @@ export declare namespace AsyncReducer {
88
88
  * // this reducer will convert all its results to string before returning them
89
89
  * ```
90
90
  */
91
- mapOutput<O2>(mapFun: (value: O) => MaybePromise<O2>): AsyncReducer<I, O2>;
91
+ mapOutput<O2>(mapFun: (value: O) => O2): AsyncReducer<I, O2>;
92
+ mapOutput<O2>(mapFun: (value: O) => Promise<O2>): AsyncReducer<I, O2>;
92
93
  /**
93
94
  * Returns an `AsyncReducer` instance that takes at most the given `amount` of input elements, and will ignore subsequent elements.
94
95
  * @param amount - the amount of elements to accept
@@ -321,7 +322,7 @@ export declare namespace AsyncReducer {
321
322
  * ```
322
323
  */
323
324
  const count: {
324
- (): AsyncReducer<any, number>;
325
+ (): AsyncReducer<never, number>;
325
326
  <T>(pred: (value: T, index: number) => MaybePromise<boolean>): AsyncReducer<T, number>;
326
327
  };
327
328
  /**
@@ -446,7 +447,7 @@ export declare namespace AsyncReducer {
446
447
  * // => false
447
448
  * ```
448
449
  */
449
- const isEmpty: AsyncReducer<any, boolean>;
450
+ const isEmpty: AsyncReducer<never, boolean>;
450
451
  /**
451
452
  * Returns an `AsyncReducer` that outputs true if one or more input values are received, false otherwise.
452
453
  * @example
@@ -455,7 +456,7 @@ export declare namespace AsyncReducer {
455
456
  * // => true
456
457
  * ```
457
458
  */
458
- const nonEmpty: AsyncReducer<any, boolean>;
459
+ const nonEmpty: AsyncReducer<never, boolean>;
459
460
  /**
460
461
  * Returns an `AsyncReducer` that collects received input values in an array, and returns a copy of that array as an output value when requested.
461
462
  * @typeparam T - the element type
@@ -502,16 +503,40 @@ export declare namespace AsyncReducer {
502
503
  */
503
504
  function toJSObject<K extends string | number | symbol, V>(): AsyncReducer<[K, V], Record<K, V>>;
504
505
  /**
505
- * Returns a `Reducer` that combines multiple input `reducers` by providing input values to all of them and collecting the outputs in an array.
506
+ * Returns an `AsyncReducer` that combines multiple input `reducers` by providing input values to all of them and collecting the outputs in an array.
506
507
  * @param reducers - 2 or more reducers to combine
507
508
  * @example
508
509
  * ```ts
509
- * const red = Reducer.combine(Reducer.sum, Reducer.average)
510
- * console.log(Stream.range({amount: 9 }).reduce(red))
510
+ * const red = AsyncReducer.combineArr(AsyncReducer.sum, AsyncReducer.average)
511
+ *
512
+ * await AsyncStream.from(Stream.range({ amount: 9 }))
513
+ * .reduce(red)
511
514
  * // => [36, 4]
512
515
  * ```
513
516
  */
514
- function combine<T, R extends readonly [unknown, unknown, ...unknown[]]>(...reducers: {
517
+ function combineArr<T, R extends readonly [unknown, unknown, ...unknown[]]>(...reducers: {
515
518
  [K in keyof R]: AsyncReducer<T, R[K]>;
516
519
  } & AsyncReducer<T, unknown>[]): AsyncReducer<T, R>;
520
+ /**
521
+ * Returns an `AsyncReducer` that combines multiple input `reducers` by providing input values to all of them and collecting the outputs in the shape of the given object.
522
+ * @typeparam T - the input type for all the reducers
523
+ * @typeparam R - the result object shape
524
+ * @param reducerObj - an object of keys, and reducers corresponding to those keys
525
+ * @example
526
+ * ```ts
527
+ * const red = AsyncReducer.combineObj({
528
+ * theSum: Reducer.sum,
529
+ * theAverage: Reducer.average
530
+ * });
531
+ *
532
+ * await AsyncStream.from(Stream.range({ amount: 9 }))
533
+ * .reduce(red));
534
+ * // => { theSum: 36, theAverage: 4 }
535
+ * ```
536
+ */
537
+ function combineObj<T, R extends {
538
+ readonly [key: string]: unknown;
539
+ }>(reducerObj: {
540
+ readonly [K in keyof R]: AsyncReducer<T, R[K]>;
541
+ } & Record<string, AsyncReducer<T, unknown>>): AsyncReducer<T, R>;
517
542
  }
@@ -29,7 +29,7 @@ export declare namespace Range {
29
29
  * @param range - the `Range` to use
30
30
  */
31
31
  function getNormalizedRange<T>(range: Range<T>): {
32
- start?: [T, boolean];
33
- end?: [T, boolean];
32
+ start?: [T, boolean] | undefined;
33
+ end?: [T, boolean] | undefined;
34
34
  };
35
35
  }
@@ -322,7 +322,7 @@ export declare namespace Reducer {
322
322
  * ```
323
323
  */
324
324
  const count: {
325
- (): Reducer<any, number>;
325
+ (): Reducer<never, number>;
326
326
  <T>(pred: (value: T, index: number) => boolean): Reducer<T, number>;
327
327
  };
328
328
  /**
@@ -447,7 +447,7 @@ export declare namespace Reducer {
447
447
  * // => false
448
448
  * ```
449
449
  */
450
- const isEmpty: Reducer<any, boolean>;
450
+ const isEmpty: Reducer<never, boolean>;
451
451
  /**
452
452
  * Returns a `Reducer` that outputs true if one or more input values are received, false otherwise.
453
453
  * @example
@@ -456,7 +456,7 @@ export declare namespace Reducer {
456
456
  * // => true
457
457
  * ```
458
458
  */
459
- const nonEmpty: Reducer<any, boolean>;
459
+ const nonEmpty: Reducer<never, boolean>;
460
460
  /**
461
461
  * Returns a `Reducer` that collects received input values in an array, and returns a copy of that array as an output value when requested.
462
462
  * @typeparam T - the element type
@@ -510,12 +510,33 @@ export declare namespace Reducer {
510
510
  * @param reducers - 2 or more reducers to combine
511
511
  * @example
512
512
  * ```ts
513
- * const red = Reducer.combine(Reducer.sum, Reducer.average)
513
+ * const red = Reducer.combineArr(Reducer.sum, Reducer.average)
514
514
  * console.log(Stream.range({amount: 9 }).reduce(red))
515
515
  * // => [36, 4]
516
516
  * ```
517
517
  */
518
- function combine<T, R extends readonly [unknown, unknown, ...unknown[]]>(...reducers: {
518
+ function combineArr<T, R extends readonly [unknown, unknown, ...unknown[]]>(...reducers: {
519
519
  [K in keyof R]: Reducer<T, R[K]>;
520
520
  } & Reducer<T, unknown>[]): Reducer<T, R>;
521
+ /**
522
+ * Returns a `Reducer` that combines multiple input `reducers` by providing input values to all of them and collecting the outputs in the shape of the given object.
523
+ * @typeparam T - the input type for all the reducers
524
+ * @typeparam R - the result object shape
525
+ * @param reducerObj - an object of keys, and reducers corresponding to those keys
526
+ * @example
527
+ * ```ts
528
+ * const red = Reducer.combineObj({
529
+ * theSum: Reducer.sum,
530
+ * theAverage: Reducer.average
531
+ * });
532
+ *
533
+ * Stream.range({ amount: 9 }).reduce(red);
534
+ * // => { theSum: 36, theAverage: 4 }
535
+ * ```
536
+ */
537
+ function combineObj<T, R extends {
538
+ readonly [key: string]: unknown;
539
+ }>(reducerObj: {
540
+ readonly [K in keyof R]: Reducer<T, R[K]>;
541
+ } & Record<string, Reducer<T, unknown>>): Reducer<T, R>;
521
542
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rimbu/common",
3
- "version": "0.10.2",
3
+ "version": "0.11.0",
4
4
  "description": "Common types and objects used in many other Rimbu packages",
5
5
  "keywords": [
6
6
  "common",
@@ -50,6 +50,7 @@
50
50
  "format:check": "yarn format:base --check",
51
51
  "lint": "eslint src",
52
52
  "test": "jest",
53
+ "test:types": "tsd",
53
54
  "typecheck": "tsc"
54
55
  },
55
56
  "sideEffects": false,
@@ -63,5 +64,5 @@
63
64
  "dependencies": {
64
65
  "tslib": "^2.4.0"
65
66
  },
66
- "gitHead": "0d1677b4df9c1b0f1dc337eb38eea7a99ea7fc43"
67
+ "gitHead": "28454fe17a4e51a42f6107f7b1733270d0d88de5"
67
68
  }
@@ -105,7 +105,8 @@ export namespace AsyncReducer {
105
105
  * // this reducer will convert all its results to string before returning them
106
106
  * ```
107
107
  */
108
- mapOutput<O2>(mapFun: (value: O) => MaybePromise<O2>): AsyncReducer<I, O2>;
108
+ mapOutput<O2>(mapFun: (value: O) => O2): AsyncReducer<I, O2>;
109
+ mapOutput<O2>(mapFun: (value: O) => Promise<O2>): AsyncReducer<I, O2>;
109
110
  /**
110
111
  * Returns an `AsyncReducer` instance that takes at most the given `amount` of input elements, and will ignore subsequent elements.
111
112
  * @param amount - the amount of elements to accept
@@ -573,15 +574,15 @@ export namespace AsyncReducer {
573
574
  * ```
574
575
  */
575
576
  export const count: {
576
- (): AsyncReducer<any, number>;
577
+ (): AsyncReducer<never, number>;
577
578
  <T>(pred: (value: T, index: number) => MaybePromise<boolean>): AsyncReducer<
578
579
  T,
579
580
  number
580
581
  >;
581
582
  } = (
582
583
  pred?: (value: any, index: number) => MaybePromise<boolean>
583
- ): AsyncReducer<any, number> => {
584
- if (undefined === pred) return createMono(0, (_, __, i): number => i + 1);
584
+ ): AsyncReducer<never, number> => {
585
+ if (undefined === pred) return createOutput(0, (_, __, i): number => i + 1);
585
586
 
586
587
  return createOutput(0, async (state, next, i): Promise<number> => {
587
588
  if (await pred?.(next, i)) return state + 1;
@@ -842,7 +843,7 @@ export namespace AsyncReducer {
842
843
  * // => false
843
844
  * ```
844
845
  */
845
- export const isEmpty = createOutput<any, boolean>(
846
+ export const isEmpty = createOutput<never, boolean>(
846
847
  true,
847
848
  (_, __, ___, halt): false => {
848
849
  halt();
@@ -858,7 +859,7 @@ export namespace AsyncReducer {
858
859
  * // => true
859
860
  * ```
860
861
  */
861
- export const nonEmpty = createOutput<any, boolean>(
862
+ export const nonEmpty = createOutput<never, boolean>(
862
863
  false,
863
864
  (_, __, ___, halt): true => {
864
865
  halt();
@@ -955,16 +956,18 @@ export namespace AsyncReducer {
955
956
  }
956
957
 
957
958
  /**
958
- * Returns a `Reducer` that combines multiple input `reducers` by providing input values to all of them and collecting the outputs in an array.
959
+ * Returns an `AsyncReducer` that combines multiple input `reducers` by providing input values to all of them and collecting the outputs in an array.
959
960
  * @param reducers - 2 or more reducers to combine
960
961
  * @example
961
962
  * ```ts
962
- * const red = Reducer.combine(Reducer.sum, Reducer.average)
963
- * console.log(Stream.range({amount: 9 }).reduce(red))
963
+ * const red = AsyncReducer.combineArr(AsyncReducer.sum, AsyncReducer.average)
964
+ *
965
+ * await AsyncStream.from(Stream.range({ amount: 9 }))
966
+ * .reduce(red)
964
967
  * // => [36, 4]
965
968
  * ```
966
969
  */
967
- export function combine<
970
+ export function combineArr<
968
971
  T,
969
972
  R extends readonly [unknown, unknown, ...unknown[]]
970
973
  >(
@@ -1035,4 +1038,111 @@ export namespace AsyncReducer {
1035
1038
  ) as any
1036
1039
  );
1037
1040
  }
1041
+
1042
+ /**
1043
+ * Returns an `AsyncReducer` that combines multiple input `reducers` by providing input values to all of them and collecting the outputs in the shape of the given object.
1044
+ * @typeparam T - the input type for all the reducers
1045
+ * @typeparam R - the result object shape
1046
+ * @param reducerObj - an object of keys, and reducers corresponding to those keys
1047
+ * @example
1048
+ * ```ts
1049
+ * const red = AsyncReducer.combineObj({
1050
+ * theSum: Reducer.sum,
1051
+ * theAverage: Reducer.average
1052
+ * });
1053
+ *
1054
+ * await AsyncStream.from(Stream.range({ amount: 9 }))
1055
+ * .reduce(red));
1056
+ * // => { theSum: 36, theAverage: 4 }
1057
+ * ```
1058
+ */
1059
+ export function combineObj<T, R extends { readonly [key: string]: unknown }>(
1060
+ reducerObj: { readonly [K in keyof R]: AsyncReducer<T, R[K]> } & Record<
1061
+ string,
1062
+ AsyncReducer<T, unknown>
1063
+ >
1064
+ ): AsyncReducer<T, R> {
1065
+ const createState = async (): Promise<
1066
+ Record<
1067
+ keyof R,
1068
+ {
1069
+ reducer: AsyncReducer<T, unknown>;
1070
+ halted: boolean;
1071
+ halt(): void;
1072
+ state: unknown;
1073
+ }
1074
+ >
1075
+ > => {
1076
+ const entries = await Promise.all(
1077
+ Object.entries(reducerObj).map(async ([key, reducer]) => {
1078
+ const result = {
1079
+ reducer,
1080
+ halted: false,
1081
+ halt(): void {
1082
+ result.halted = true;
1083
+ },
1084
+ state: await AsyncOptLazy.toMaybePromise(reducer.init),
1085
+ };
1086
+
1087
+ return [key, result] as const;
1088
+ })
1089
+ );
1090
+
1091
+ return Object.fromEntries(entries) as any;
1092
+ };
1093
+
1094
+ return create<
1095
+ T,
1096
+ R,
1097
+ Record<
1098
+ keyof R,
1099
+ {
1100
+ reducer: AsyncReducer<T, unknown>;
1101
+ halted: boolean;
1102
+ halt(): void;
1103
+ state: unknown;
1104
+ }
1105
+ >
1106
+ >(
1107
+ createState,
1108
+ async (allState, next, index, halt) => {
1109
+ let anyNotHalted = false;
1110
+
1111
+ await Promise.all(
1112
+ Object.values(allState).map(async (red) => {
1113
+ if (red.halted) {
1114
+ return;
1115
+ }
1116
+
1117
+ red.state = await red.reducer.next(
1118
+ red.state,
1119
+ next,
1120
+ index,
1121
+ red.halt
1122
+ );
1123
+
1124
+ if (!red.halted) {
1125
+ anyNotHalted = true;
1126
+ }
1127
+ })
1128
+ );
1129
+
1130
+ if (!anyNotHalted) {
1131
+ halt();
1132
+ }
1133
+
1134
+ return allState;
1135
+ },
1136
+ async (allState) => {
1137
+ const entries = await Promise.all(
1138
+ Object.entries(allState).map(
1139
+ async ([key, st]) =>
1140
+ [key, await st.reducer.stateToResult(st.state)] as const
1141
+ )
1142
+ );
1143
+
1144
+ return Object.fromEntries(entries) as any;
1145
+ }
1146
+ );
1147
+ }
1038
1148
  }
package/src/range.ts CHANGED
@@ -24,8 +24,8 @@ export namespace Range {
24
24
  * @param range - the `Range` to use
25
25
  */
26
26
  export function getNormalizedRange<T>(range: Range<T>): {
27
- start?: [T, boolean];
28
- end?: [T, boolean];
27
+ start?: [T, boolean] | undefined;
28
+ end?: [T, boolean] | undefined;
29
29
  } {
30
30
  let start: [T, boolean] | undefined = undefined;
31
31
  let end: [T, boolean] | undefined = undefined;
package/src/reducer.ts CHANGED
@@ -501,10 +501,12 @@ export namespace Reducer {
501
501
  * ```
502
502
  */
503
503
  export const count: {
504
- (): Reducer<any, number>;
504
+ (): Reducer<never, number>;
505
505
  <T>(pred: (value: T, index: number) => boolean): Reducer<T, number>;
506
- } = (pred?: (value: any, index: number) => boolean): Reducer<any, number> => {
507
- if (undefined === pred) return createMono(0, (_, __, i): number => i + 1);
506
+ } = (
507
+ pred?: (value: unknown, index: number) => boolean
508
+ ): Reducer<never, number> => {
509
+ if (undefined === pred) return createOutput(0, (_, __, i): number => i + 1);
508
510
 
509
511
  return createOutput(0, (state, next, i): number => {
510
512
  if (pred?.(next, i)) return state + 1;
@@ -749,7 +751,7 @@ export namespace Reducer {
749
751
  * // => false
750
752
  * ```
751
753
  */
752
- export const isEmpty = createOutput<any, boolean>(
754
+ export const isEmpty = createOutput<never, boolean>(
753
755
  true,
754
756
  (_, __, ___, halt): false => {
755
757
  halt();
@@ -765,7 +767,7 @@ export namespace Reducer {
765
767
  * // => true
766
768
  * ```
767
769
  */
768
- export const nonEmpty = createOutput<any, boolean>(
770
+ export const nonEmpty = createOutput<never, boolean>(
769
771
  false,
770
772
  (_, __, ___, halt): true => {
771
773
  halt();
@@ -866,12 +868,12 @@ export namespace Reducer {
866
868
  * @param reducers - 2 or more reducers to combine
867
869
  * @example
868
870
  * ```ts
869
- * const red = Reducer.combine(Reducer.sum, Reducer.average)
871
+ * const red = Reducer.combineArr(Reducer.sum, Reducer.average)
870
872
  * console.log(Stream.range({amount: 9 }).reduce(red))
871
873
  * // => [36, 4]
872
874
  * ```
873
875
  */
874
- export function combine<
876
+ export function combineArr<
875
877
  T,
876
878
  R extends readonly [unknown, unknown, ...unknown[]]
877
879
  >(
@@ -904,16 +906,24 @@ export namespace Reducer {
904
906
 
905
907
  let i = -1;
906
908
  const len = allState.length;
909
+
907
910
  while (++i < len) {
908
911
  const red = allState[i];
909
912
 
910
- if (red.halted) continue;
913
+ if (red.halted) {
914
+ continue;
915
+ }
911
916
 
912
917
  red.state = red.reducer.next(red.state, next, index, red.halt);
913
- if (!red.halted) anyNotHalted = true;
918
+
919
+ if (!red.halted) {
920
+ anyNotHalted = true;
921
+ }
914
922
  }
915
923
 
916
- if (!anyNotHalted) halt();
924
+ if (!anyNotHalted) {
925
+ halt();
926
+ }
917
927
 
918
928
  return allState;
919
929
  },
@@ -921,4 +931,93 @@ export namespace Reducer {
921
931
  allState.map((st) => st.reducer.stateToResult(st.state)) as any
922
932
  );
923
933
  }
934
+
935
+ /**
936
+ * Returns a `Reducer` that combines multiple input `reducers` by providing input values to all of them and collecting the outputs in the shape of the given object.
937
+ * @typeparam T - the input type for all the reducers
938
+ * @typeparam R - the result object shape
939
+ * @param reducerObj - an object of keys, and reducers corresponding to those keys
940
+ * @example
941
+ * ```ts
942
+ * const red = Reducer.combineObj({
943
+ * theSum: Reducer.sum,
944
+ * theAverage: Reducer.average
945
+ * });
946
+ *
947
+ * Stream.range({ amount: 9 }).reduce(red);
948
+ * // => { theSum: 36, theAverage: 4 }
949
+ * ```
950
+ */
951
+ export function combineObj<T, R extends { readonly [key: string]: unknown }>(
952
+ reducerObj: { readonly [K in keyof R]: Reducer<T, R[K]> } & Record<
953
+ string,
954
+ Reducer<T, unknown>
955
+ >
956
+ ): Reducer<T, R> {
957
+ const createState = (): Record<
958
+ keyof R,
959
+ {
960
+ reducer: Reducer<T, unknown>;
961
+ halted: boolean;
962
+ halt(): void;
963
+ state: unknown;
964
+ }
965
+ > => {
966
+ const allState: any = {};
967
+
968
+ for (const key in reducerObj) {
969
+ const reducer = reducerObj[key];
970
+
971
+ const result = {
972
+ reducer,
973
+ halted: false,
974
+ halt(): void {
975
+ result.halted = true;
976
+ },
977
+ state: OptLazy(reducer.init),
978
+ };
979
+
980
+ allState[key] = result;
981
+ }
982
+
983
+ return allState;
984
+ };
985
+
986
+ return create<T, R, ReturnType<typeof createState>>(
987
+ createState,
988
+ (allState, next, index, halt) => {
989
+ let anyNotHalted = false;
990
+
991
+ for (const key in allState) {
992
+ const red = allState[key];
993
+
994
+ if (red.halted) {
995
+ continue;
996
+ }
997
+
998
+ red.state = red.reducer.next(red.state, next, index, red.halt);
999
+
1000
+ if (!red.halted) {
1001
+ anyNotHalted = true;
1002
+ }
1003
+ }
1004
+
1005
+ if (!anyNotHalted) {
1006
+ halt();
1007
+ }
1008
+
1009
+ return allState;
1010
+ },
1011
+ (allState) => {
1012
+ const result: any = {};
1013
+
1014
+ for (const key in allState) {
1015
+ const st = allState[key];
1016
+ result[key] = st.reducer.stateToResult(st.state);
1017
+ }
1018
+
1019
+ return result;
1020
+ }
1021
+ );
1022
+ }
924
1023
  }