@fncts/io 0.0.49 → 0.0.50

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.
Files changed (226) hide show
  1. package/IO/api/foreachExec.d.ts +18 -0
  2. package/Push/Bounds.d.ts +4 -0
  3. package/Push/FlattenStrategy.d.ts +47 -0
  4. package/Push/IndexedBuffer.d.ts +19 -0
  5. package/Push/MergeStrategy.d.ts +19 -0
  6. package/Push/Operator/IOLoopOperator.d.ts +61 -0
  7. package/Push/Operator/IOOperator.d.ts +63 -0
  8. package/Push/Operator/LoopOperator.d.ts +50 -0
  9. package/Push/Operator/SyncOperator.d.ts +41 -0
  10. package/Push/Operator.d.ts +4 -0
  11. package/Push/Producer/IOProducer.d.ts +41 -0
  12. package/Push/Producer/SyncProducer.d.ts +61 -0
  13. package/Push/Producer.d.ts +1 -0
  14. package/Push/Sink.d.ts +65 -0
  15. package/Push/api.d.ts +78 -161
  16. package/Push/definition.d.ts +92 -19
  17. package/Push/internal.d.ts +3 -0
  18. package/Push.d.ts +6 -0
  19. package/Ref/Synchronized/definition.d.ts +32 -9
  20. package/Ref/definition.d.ts +12 -0
  21. package/Scope/api.d.ts +16 -1
  22. package/Sink/definition.d.ts +5 -6
  23. package/Subject/Atomic.d.ts +19 -9
  24. package/Subject/DeferredRef.d.ts +17 -0
  25. package/Subject/Hold.d.ts +19 -0
  26. package/Subject/RefSubject/Atomic.d.ts +41 -0
  27. package/Subject/RefSubject/Derived.d.ts +43 -0
  28. package/Subject/RefSubject/RefSubject.d.ts +27 -0
  29. package/Subject/definition.d.ts +14 -2
  30. package/Subject.d.ts +2 -0
  31. package/SubscriptionRef.d.ts +0 -1
  32. package/_cjs/IO/api/foreachExec.cjs +29 -4
  33. package/_cjs/IO/api/foreachExec.cjs.map +1 -1
  34. package/_cjs/Push/Bounds.cjs +2 -0
  35. package/_cjs/Push/Bounds.cjs.map +1 -0
  36. package/_cjs/Push/FlattenStrategy.cjs +95 -0
  37. package/_cjs/Push/FlattenStrategy.cjs.map +1 -0
  38. package/_cjs/Push/IndexedBuffer.cjs +70 -0
  39. package/_cjs/Push/IndexedBuffer.cjs.map +1 -0
  40. package/_cjs/Push/MergeStrategy.cjs +45 -0
  41. package/_cjs/Push/MergeStrategy.cjs.map +1 -0
  42. package/_cjs/Push/Operator/IOLoopOperator.cjs +225 -0
  43. package/_cjs/Push/Operator/IOLoopOperator.cjs.map +1 -0
  44. package/_cjs/Push/Operator/IOOperator.cjs +104 -0
  45. package/_cjs/Push/Operator/IOOperator.cjs.map +1 -0
  46. package/_cjs/Push/Operator/LoopOperator.cjs +165 -0
  47. package/_cjs/Push/Operator/LoopOperator.cjs.map +1 -0
  48. package/_cjs/Push/Operator/SyncOperator.cjs +78 -0
  49. package/_cjs/Push/Operator/SyncOperator.cjs.map +1 -0
  50. package/_cjs/Push/Operator.cjs +2 -0
  51. package/_cjs/Push/Operator.cjs.map +1 -0
  52. package/_cjs/Push/Producer/IOProducer.cjs +67 -0
  53. package/_cjs/Push/Producer/IOProducer.cjs.map +1 -0
  54. package/_cjs/Push/Producer/SyncProducer.cjs +107 -0
  55. package/_cjs/Push/Producer/SyncProducer.cjs.map +1 -0
  56. package/_cjs/Push/Producer.cjs +2 -0
  57. package/_cjs/Push/Producer.cjs.map +1 -0
  58. package/_cjs/Push/Sink.cjs +219 -0
  59. package/_cjs/Push/Sink.cjs.map +1 -0
  60. package/_cjs/Push/api.cjs +339 -383
  61. package/_cjs/Push/api.cjs.map +1 -1
  62. package/_cjs/Push/definition.cjs +79 -22
  63. package/_cjs/Push/definition.cjs.map +1 -1
  64. package/_cjs/Push/internal.cjs +31 -26
  65. package/_cjs/Push/internal.cjs.map +1 -1
  66. package/_cjs/Push.cjs +66 -0
  67. package/_cjs/Push.cjs.map +1 -1
  68. package/_cjs/Ref/Synchronized/definition.cjs +12 -12
  69. package/_cjs/Ref/Synchronized/definition.cjs.map +1 -1
  70. package/_cjs/Ref/definition.cjs.map +1 -1
  71. package/_cjs/Scope/api.cjs +28 -7
  72. package/_cjs/Scope/api.cjs.map +1 -1
  73. package/_cjs/Sink/definition.cjs +2 -3
  74. package/_cjs/Sink/definition.cjs.map +1 -1
  75. package/_cjs/Stream/definition.cjs.map +1 -1
  76. package/_cjs/Subject/Atomic.cjs +45 -10
  77. package/_cjs/Subject/Atomic.cjs.map +1 -1
  78. package/_cjs/Subject/DeferredRef.cjs +53 -0
  79. package/_cjs/Subject/DeferredRef.cjs.map +1 -0
  80. package/_cjs/Subject/Hold.cjs +41 -0
  81. package/_cjs/Subject/Hold.cjs.map +1 -0
  82. package/_cjs/Subject/RefSubject/Atomic.cjs +130 -0
  83. package/_cjs/Subject/RefSubject/Atomic.cjs.map +1 -0
  84. package/_cjs/Subject/RefSubject/Derived.cjs +98 -0
  85. package/_cjs/Subject/RefSubject/Derived.cjs.map +1 -0
  86. package/_cjs/Subject/RefSubject/RefSubject.cjs +19 -0
  87. package/_cjs/Subject/RefSubject/RefSubject.cjs.map +1 -0
  88. package/_cjs/Subject/definition.cjs +16 -1
  89. package/_cjs/Subject/definition.cjs.map +1 -1
  90. package/_cjs/Subject.cjs +22 -0
  91. package/_cjs/Subject.cjs.map +1 -1
  92. package/_cjs/SubscriptionRef.cjs +0 -1
  93. package/_cjs/SubscriptionRef.cjs.map +1 -1
  94. package/_mjs/IO/api/foreachExec.mjs +27 -4
  95. package/_mjs/IO/api/foreachExec.mjs.map +1 -1
  96. package/_mjs/Push/Bounds.mjs +2 -0
  97. package/_mjs/Push/Bounds.mjs.map +1 -0
  98. package/_mjs/Push/FlattenStrategy.mjs +86 -0
  99. package/_mjs/Push/FlattenStrategy.mjs.map +1 -0
  100. package/_mjs/Push/IndexedBuffer.mjs +61 -0
  101. package/_mjs/Push/IndexedBuffer.mjs.map +1 -0
  102. package/_mjs/Push/MergeStrategy.mjs +34 -0
  103. package/_mjs/Push/MergeStrategy.mjs.map +1 -0
  104. package/_mjs/Push/Operator/IOLoopOperator.mjs +208 -0
  105. package/_mjs/Push/Operator/IOLoopOperator.mjs.map +1 -0
  106. package/_mjs/Push/Operator/IOOperator.mjs +91 -0
  107. package/_mjs/Push/Operator/IOOperator.mjs.map +1 -0
  108. package/_mjs/Push/Operator/LoopOperator.mjs +151 -0
  109. package/_mjs/Push/Operator/LoopOperator.mjs.map +1 -0
  110. package/_mjs/Push/Operator/SyncOperator.mjs +67 -0
  111. package/_mjs/Push/Operator/SyncOperator.mjs.map +1 -0
  112. package/_mjs/Push/Operator.mjs +2 -0
  113. package/_mjs/Push/Operator.mjs.map +1 -0
  114. package/_mjs/Push/Producer/IOProducer.mjs +55 -0
  115. package/_mjs/Push/Producer/IOProducer.mjs.map +1 -0
  116. package/_mjs/Push/Producer/SyncProducer.mjs +90 -0
  117. package/_mjs/Push/Producer/SyncProducer.mjs.map +1 -0
  118. package/_mjs/Push/Producer.mjs +2 -0
  119. package/_mjs/Push/Producer.mjs.map +1 -0
  120. package/_mjs/Push/Sink.mjs +206 -0
  121. package/_mjs/Push/Sink.mjs.map +1 -0
  122. package/_mjs/Push/api.mjs +311 -344
  123. package/_mjs/Push/api.mjs.map +1 -1
  124. package/_mjs/Push/definition.mjs +73 -18
  125. package/_mjs/Push/definition.mjs.map +1 -1
  126. package/_mjs/Push/internal.mjs +30 -26
  127. package/_mjs/Push/internal.mjs.map +1 -1
  128. package/_mjs/Push.mjs +7 -1
  129. package/_mjs/Push.mjs.map +1 -1
  130. package/_mjs/Ref/Synchronized/definition.mjs +12 -12
  131. package/_mjs/Ref/Synchronized/definition.mjs.map +1 -1
  132. package/_mjs/Ref/definition.mjs.map +1 -1
  133. package/_mjs/Scope/api.mjs +22 -4
  134. package/_mjs/Scope/api.mjs.map +1 -1
  135. package/_mjs/Sink/definition.mjs +2 -3
  136. package/_mjs/Sink/definition.mjs.map +1 -1
  137. package/_mjs/Stream/definition.mjs.map +1 -1
  138. package/_mjs/Subject/Atomic.mjs +46 -10
  139. package/_mjs/Subject/Atomic.mjs.map +1 -1
  140. package/_mjs/Subject/DeferredRef.mjs +45 -0
  141. package/_mjs/Subject/DeferredRef.mjs.map +1 -0
  142. package/_mjs/Subject/Hold.mjs +33 -0
  143. package/_mjs/Subject/Hold.mjs.map +1 -0
  144. package/_mjs/Subject/RefSubject/Atomic.mjs +122 -0
  145. package/_mjs/Subject/RefSubject/Atomic.mjs.map +1 -0
  146. package/_mjs/Subject/RefSubject/Derived.mjs +90 -0
  147. package/_mjs/Subject/RefSubject/Derived.mjs.map +1 -0
  148. package/_mjs/Subject/RefSubject/RefSubject.mjs +12 -0
  149. package/_mjs/Subject/RefSubject/RefSubject.mjs.map +1 -0
  150. package/_mjs/Subject/definition.mjs +14 -0
  151. package/_mjs/Subject/definition.mjs.map +1 -1
  152. package/_mjs/Subject.mjs +2 -0
  153. package/_mjs/Subject.mjs.map +1 -1
  154. package/_mjs/SubscriptionRef.mjs +0 -1
  155. package/_mjs/SubscriptionRef.mjs.map +1 -1
  156. package/_src/IO/api/foreachExec.ts +47 -0
  157. package/_src/Push/Bounds.ts +4 -0
  158. package/_src/Push/FlattenStrategy.ts +137 -0
  159. package/_src/Push/IndexedBuffer.ts +79 -0
  160. package/_src/Push/MergeStrategy.ts +59 -0
  161. package/_src/Push/Operator/IOLoopOperator.ts +413 -0
  162. package/_src/Push/Operator/IOOperator.ts +173 -0
  163. package/_src/Push/Operator/LoopOperator.ts +242 -0
  164. package/_src/Push/Operator/SyncOperator.ts +107 -0
  165. package/_src/Push/Operator.ts +7 -0
  166. package/_src/Push/Producer/IOProducer.ts +83 -0
  167. package/_src/Push/Producer/SyncProducer.ts +105 -0
  168. package/_src/Push/Producer.ts +0 -0
  169. package/_src/Push/Sink.ts +302 -0
  170. package/_src/Push/api.ts +387 -513
  171. package/_src/Push/definition.ts +216 -23
  172. package/_src/Push/internal.ts +11 -0
  173. package/_src/Push.ts +7 -1
  174. package/_src/Ref/Synchronized/definition.ts +81 -37
  175. package/_src/Ref/definition.ts +26 -0
  176. package/_src/Scope/api.ts +22 -0
  177. package/_src/Sink/definition.ts +4 -5
  178. package/_src/Stream/definition.ts +0 -1
  179. package/_src/Subject/Atomic.ts +68 -11
  180. package/_src/Subject/DeferredRef.ts +44 -0
  181. package/_src/Subject/Hold.ts +48 -0
  182. package/_src/Subject/RefSubject/Atomic.ts +193 -0
  183. package/_src/Subject/RefSubject/Derived.ts +179 -0
  184. package/_src/Subject/RefSubject/RefSubject.ts +90 -0
  185. package/_src/Subject/definition.ts +21 -3
  186. package/_src/Subject.ts +5 -3
  187. package/_src/SubscriptionRef.ts +1 -1
  188. package/_src/index.ts +49 -50
  189. package/index.d.ts +0 -1
  190. package/package.json +4 -4
  191. package/RefSubject/Atomic.d.ts +0 -34
  192. package/RefSubject/Synchronized/api.d.ts +0 -9
  193. package/RefSubject/Synchronized/definition.d.ts +0 -39
  194. package/RefSubject/api.d.ts +0 -120
  195. package/RefSubject/definition.d.ts +0 -52
  196. package/RefSubject.d.ts +0 -3
  197. package/_cjs/RefSubject/Atomic.cjs +0 -107
  198. package/_cjs/RefSubject/Atomic.cjs.map +0 -1
  199. package/_cjs/RefSubject/Synchronized/api.cjs +0 -22
  200. package/_cjs/RefSubject/Synchronized/api.cjs.map +0 -1
  201. package/_cjs/RefSubject/Synchronized/definition.cjs +0 -55
  202. package/_cjs/RefSubject/Synchronized/definition.cjs.map +0 -1
  203. package/_cjs/RefSubject/api.cjs +0 -251
  204. package/_cjs/RefSubject/api.cjs.map +0 -1
  205. package/_cjs/RefSubject/definition.cjs +0 -26
  206. package/_cjs/RefSubject/definition.cjs.map +0 -1
  207. package/_cjs/RefSubject.cjs +0 -39
  208. package/_cjs/RefSubject.cjs.map +0 -1
  209. package/_mjs/RefSubject/Atomic.mjs +0 -99
  210. package/_mjs/RefSubject/Atomic.mjs.map +0 -1
  211. package/_mjs/RefSubject/Synchronized/api.mjs +0 -15
  212. package/_mjs/RefSubject/Synchronized/api.mjs.map +0 -1
  213. package/_mjs/RefSubject/Synchronized/definition.mjs +0 -47
  214. package/_mjs/RefSubject/Synchronized/definition.mjs.map +0 -1
  215. package/_mjs/RefSubject/api.mjs +0 -229
  216. package/_mjs/RefSubject/api.mjs.map +0 -1
  217. package/_mjs/RefSubject/definition.mjs +0 -19
  218. package/_mjs/RefSubject/definition.mjs.map +0 -1
  219. package/_mjs/RefSubject.mjs +0 -5
  220. package/_mjs/RefSubject.mjs.map +0 -1
  221. package/_src/RefSubject/Atomic.ts +0 -129
  222. package/_src/RefSubject/Synchronized/api.ts +0 -14
  223. package/_src/RefSubject/Synchronized/definition.ts +0 -76
  224. package/_src/RefSubject/api.ts +0 -253
  225. package/_src/RefSubject/definition.ts +0 -70
  226. package/_src/RefSubject.ts +0 -5
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Filter = Filter;
7
+ exports.FilterMap = FilterMap;
8
+ exports.Map = Map;
9
+ exports.fuse = fuse;
10
+ exports.match = match;
11
+ var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/data/function/api"));
12
+ var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/data/Maybe/constructors"));
13
+ var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/data/Predicate/api"));
14
+ var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/data/Maybe/api"));
15
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
16
+ const fileName_1 = "(@fncts/io) src/Push/Operator/SyncOperator.ts";
17
+ function Map(f) {
18
+ return {
19
+ _tag: "Map" /* SyncOperatorTag.Map */,
20
+ f
21
+ };
22
+ }
23
+ function Filter(f) {
24
+ return {
25
+ _tag: "Filter" /* SyncOperatorTag.Filter */,
26
+ f
27
+ };
28
+ }
29
+ function FilterMap(f) {
30
+ return {
31
+ _tag: "FilterMap" /* SyncOperatorTag.FilterMap */,
32
+ f
33
+ };
34
+ }
35
+ const SyncOperatorFusionMap = {
36
+ ["Map" /* SyncOperatorTag.Map */]: {
37
+ ["Map" /* SyncOperatorTag.Map */]: (op1, op2) => Map(tsplus_module_1.compose(op2.f)(op1.f)),
38
+ ["Filter" /* SyncOperatorTag.Filter */]: (op1, op2) => FilterMap(a => {
39
+ const b = op1.f(a);
40
+ return op2.f(b) ? tsplus_module_2.just(b, fileName_1 + ":64:31") : tsplus_module_2.nothing(fileName_1 + ":64:44");
41
+ }),
42
+ ["FilterMap" /* SyncOperatorTag.FilterMap */]: (op1, op2) => FilterMap(tsplus_module_1.compose(op2.f)(op1.f))
43
+ },
44
+ ["Filter" /* SyncOperatorTag.Filter */]: {
45
+ ["Map" /* SyncOperatorTag.Map */]: (op1, op2) => FilterMap(a => op1.f(a) ? tsplus_module_2.just(op2.f(a), fileName_1 + ":69:75") : tsplus_module_2.nothing(fileName_1 + ":69:95")),
46
+ ["Filter" /* SyncOperatorTag.Filter */]: (op1, op2) => Filter(tsplus_module_3.and(op2.f)(op1.f)),
47
+ ["FilterMap" /* SyncOperatorTag.FilterMap */]: (op1, op2) => FilterMap(a => op1.f(a) ? op2.f(a) : tsplus_module_2.nothing(fileName_1 + ":71:95"))
48
+ },
49
+ ["FilterMap" /* SyncOperatorTag.FilterMap */]: {
50
+ ["Map" /* SyncOperatorTag.Map */]: (op1, op2) => FilterMap(a => tsplus_module_4.map(op2.f)(op1.f(a))),
51
+ ["Filter" /* SyncOperatorTag.Filter */]: (op1, op2) => FilterMap(a => tsplus_module_4.filter(op2.f)(op1.f(a))),
52
+ ["FilterMap" /* SyncOperatorTag.FilterMap */]: (op1, op2) => FilterMap(a => tsplus_module_4.flatMap(op2.f)(op1.f(a)))
53
+ }
54
+ };
55
+ /**
56
+ * @tsplus pipeable fncts.io.Push.SyncOperator fuse
57
+ */
58
+ function fuse(that) {
59
+ return self => {
60
+ return SyncOperatorFusionMap[self._tag][that._tag](self, that);
61
+ };
62
+ }
63
+ /**
64
+ * @tsplus pipeable fncts.io.Push.SyncOperator match
65
+ */
66
+ function match(cases) {
67
+ return self => {
68
+ switch (self._tag) {
69
+ case "Map" /* SyncOperatorTag.Map */:
70
+ return cases.Map(self);
71
+ case "Filter" /* SyncOperatorTag.Filter */:
72
+ return cases.Filter(self);
73
+ case "FilterMap" /* SyncOperatorTag.FilterMap */:
74
+ return cases.FilterMap(self);
75
+ }
76
+ };
77
+ }
78
+ //# sourceMappingURL=SyncOperator.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SyncOperator.cjs","names":["Map","f","_tag","Filter","FilterMap","SyncOperatorFusionMap","op1","op2","tsplus_module_1","compose","a","b","tsplus_module_2","just","fileName_1","nothing","tsplus_module_3","and","tsplus_module_4","map","filter","flatMap","fuse","that","self","match","cases"],"sources":["../../../_src/Push/Operator/SyncOperator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=Operator.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Operator.cjs","names":[],"sources":["../../_src/Push/Operator.ts"],"sourcesContent":[null],"mappings":"","ignoreList":[]}
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Scheduled = exports.FromScheduled = exports.FromIO = void 0;
7
+ exports.runIO = runIO;
8
+ exports.runSink = runSink;
9
+ var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/io/IO/api"));
10
+ var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/io/IO/api/schedule"));
11
+ var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/io/Schedule/api"));
12
+ var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/io/IO/api/asyncIO"));
13
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
14
+ const fileName_1 = "(@fncts/io) src/Push/Producer/IOProducer.ts";
15
+ class FromIO {
16
+ constructor(source) {
17
+ this.source = source;
18
+ this._tag = 0 /* IOProducerTag.FromIO */;
19
+ }
20
+ }
21
+ exports.FromIO = FromIO;
22
+ class FromScheduled {
23
+ constructor(input, schedule) {
24
+ this.input = input;
25
+ this.schedule = schedule;
26
+ this._tag = 1 /* IOProducerTag.FromScheduled */;
27
+ }
28
+ }
29
+ exports.FromScheduled = FromScheduled;
30
+ class Scheduled {
31
+ constructor(input, schedule) {
32
+ this.input = input;
33
+ this.schedule = schedule;
34
+ this._tag = 2 /* IOProducerTag.Scheduled */;
35
+ }
36
+ }
37
+ /**
38
+ * @tsplus fluent fncts.io.Push.IOProducer runSink
39
+ */
40
+ exports.Scheduled = Scheduled;
41
+ function runSink(self, sink) {
42
+ switch (self._tag) {
43
+ case 0 /* IOProducerTag.FromIO */:
44
+ return tsplus_module_1.matchCauseIO(sink.onFailure, sink.onSuccess, fileName_1 + ":45:38")(self.source);
45
+ case 2 /* IOProducerTag.Scheduled */:
46
+ return tsplus_module_1.catchAllCause(sink.onFailure, fileName_1 + ":50:23")(tsplus_module_2.schedule(() => self.schedule, fileName_1 + ":49:18")(tsplus_module_1.matchCauseIO(sink.onFailure, sink.onSuccess, fileName_1 + ":48:22")(self.input)));
47
+ case 1 /* IOProducerTag.FromScheduled */:
48
+ return tsplus_module_1.catchAllCause(sink.onFailure, fileName_1 + ":54:23")(tsplus_module_1.flatMap(i => tsplus_module_2.scheduleFrom(() => i, () => tsplus_module_3.mapIO(sink.onSuccess, fileName_1 + ":53:77")(self.schedule), fileName_1 + ":53:48")(self.input), fileName_1 + ":53:17")(self.input));
49
+ }
50
+ }
51
+ /**
52
+ * @tsplus fluent fncts.io.Push.IOProducer runIO
53
+ */
54
+ function runIO(self, f) {
55
+ switch (self._tag) {
56
+ case 0 /* IOProducerTag.FromIO */:
57
+ return tsplus_module_1.flatMap(f, fileName_1 + ":67:33")(self.source);
58
+ case 1 /* IOProducerTag.FromScheduled */:
59
+ return tsplus_module_1.flatMap(i => tsplus_module_4.asyncIO(resume => {
60
+ const onFailure = cause => tsplus_module_1.succeedNow(resume(tsplus_module_1.failCauseNow(cause, fileName_1 + ":71:91")), fileName_1 + ":71:68");
61
+ return tsplus_module_1.asUnit(tsplus_module_1.matchCauseIO(onFailure, () => tsplus_module_1.succeedNow(resume(tsplus_module_1.unit), fileName_1 + ":77:57"), fileName_1 + ":77:26")(tsplus_module_2.scheduleFrom(() => i, () => tsplus_module_3.mapIO(a => tsplus_module_1.catchAllCause(onFailure, fileName_1 + ":75:60")(f(a)), fileName_1 + ":75:34")(self.schedule), fileName_1 + ":73:26")(self.input)), fileName_1 + ":77:75");
62
+ }, fileName_1 + ":70:19"), fileName_1 + ":69:32")(self.input);
63
+ case 2 /* IOProducerTag.Scheduled */:
64
+ return tsplus_module_2.schedule(() => self.schedule, fileName_1 + ":81:44")(tsplus_module_1.flatMap(f, fileName_1 + ":81:32")(self.input));
65
+ }
66
+ }
67
+ //# sourceMappingURL=IOProducer.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IOProducer.cjs","names":["FromIO","constructor","source","_tag","exports","FromScheduled","input","schedule","Scheduled","runSink","self","sink","tsplus_module_1","matchCauseIO","onFailure","onSuccess","fileName_1","catchAllCause","tsplus_module_2","flatMap","i","scheduleFrom","tsplus_module_3","mapIO","runIO","f","tsplus_module_4","asyncIO","resume","cause","succeedNow","failCauseNow","asUnit","unit","a"],"sources":["../../../_src/Push/Producer/IOProducer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Success = exports.FromSync = exports.FromIterable = exports.FromArray = void 0;
7
+ exports.fromArray = fromArray;
8
+ exports.fromIterable = fromIterable;
9
+ exports.fromSync = fromSync;
10
+ exports.runSink = runSink;
11
+ exports.success = success;
12
+ exports.syncOnce = syncOnce;
13
+ var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/data/Maybe/constructors"));
14
+ var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/data/Maybe/definition"));
15
+ var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/io/IO/api"));
16
+ var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/io/IO/api/array"));
17
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
18
+ const fileName_1 = "(@fncts/io) src/Push/Producer/SyncProducer.ts";
19
+ class Success {
20
+ constructor(source) {
21
+ this.source = source;
22
+ this._tag = 0 /* SyncProducerTag.Success */;
23
+ }
24
+ }
25
+ exports.Success = Success;
26
+ class FromSync {
27
+ constructor(f) {
28
+ this.f = f;
29
+ this._tag = 1 /* SyncProducerTag.FromSync */;
30
+ }
31
+ }
32
+ exports.FromSync = FromSync;
33
+ class FromArray {
34
+ constructor(array) {
35
+ this.array = array;
36
+ this._tag = 2 /* SyncProducerTag.FromArray */;
37
+ }
38
+ }
39
+ exports.FromArray = FromArray;
40
+ class FromIterable {
41
+ constructor(iterable) {
42
+ this.iterable = iterable;
43
+ this._tag = 3 /* SyncProducerTag.FromIterable */;
44
+ }
45
+ }
46
+ /**
47
+ * @tsplus static fncts.io.Push.SyncProducerOps Success
48
+ */
49
+ exports.FromIterable = FromIterable;
50
+ function success(source) {
51
+ return new Success(source);
52
+ }
53
+ /**
54
+ * @tsplus static fncts.io.Push.SyncProducerOps fromSync
55
+ */
56
+ function fromSync(f) {
57
+ return new FromSync(f);
58
+ }
59
+ /**
60
+ * @tsplus static fncts.io.Push.SyncProducerOps fromArray
61
+ */
62
+ function fromArray(array) {
63
+ return new FromArray(array);
64
+ }
65
+ /**
66
+ * @tsplus static fncts.io.Push.SyncProducerOps fromIterable
67
+ */
68
+ function fromIterable(iterable) {
69
+ return new FromIterable(iterable);
70
+ }
71
+ function syncOnce(f) {
72
+ let memoized = tsplus_module_1.nothing(fileName_1 + ":65:35");
73
+ const get = () => {
74
+ if (tsplus_module_2.isJust(memoized)) {
75
+ return memoized.value;
76
+ } else {
77
+ const a = f();
78
+ memoized = tsplus_module_1.just(a, fileName_1 + ":71:22");
79
+ return a;
80
+ }
81
+ };
82
+ return tsplus_module_3.succeed(get, fileName_1 + ":76:12");
83
+ }
84
+ /**
85
+ * @tsplus fluent fncts.io.Push.SyncProducer runSink
86
+ */
87
+ function runSink(self, sink) {
88
+ switch (self._tag) {
89
+ case 0 /* SyncProducerTag.Success */:
90
+ return sink.onSuccess(self.source);
91
+ case 1 /* SyncProducerTag.FromSync */:
92
+ return tsplus_module_3.defer(() => sink.onSuccess(self.f()), fileName_1 + ":87:22");
93
+ case 2 /* SyncProducerTag.FromArray */:
94
+ return arrayToSink(self.array, sink);
95
+ case 3 /* SyncProducerTag.FromIterable */:
96
+ return iterableToSink(self.iterable, sink);
97
+ }
98
+ }
99
+ function arrayToSink(array, sink) {
100
+ if (array.length === 0) return tsplus_module_3.unit;else if (array.length === 1) return sink.onSuccess(array[0]);else {
101
+ return tsplus_module_4.foreachArray(array, a => sink.onSuccess(a));
102
+ }
103
+ }
104
+ function iterableToSink(iterable, sink) {
105
+ return tsplus_module_3.foreach(iterable, a => sink.onSuccess(a), fileName_1 + ":104:20");
106
+ }
107
+ //# sourceMappingURL=SyncProducer.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SyncProducer.cjs","names":["Success","constructor","source","_tag","exports","FromSync","f","FromArray","array","FromIterable","iterable","success","fromSync","fromArray","fromIterable","syncOnce","memoized","tsplus_module_1","nothing","fileName_1","get","tsplus_module_2","isJust","value","a","just","tsplus_module_3","succeed","runSink","self","sink","onSuccess","defer","arrayToSink","iterableToSink","length","unit","tsplus_module_4","foreachArray","foreach"],"sources":["../../../_src/Push/Producer/SyncProducer.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;AAeM,MAAOA,OAAO;EAElBC,YAAqBC,MAAS;IAAT,KAAAA,MAAM,GAANA,MAAM;IADlB,KAAAC,IAAI;EACoB;;AAClCC,OAAA,CAAAJ,OAAA,GAAAA,OAAA;AAEK,MAAOK,QAAQ;EAEnBJ,YAAqBK,CAAU;IAAV,KAAAA,CAAC,GAADA,CAAC;IADb,KAAAH,IAAI;EACqB;;AACnCC,OAAA,CAAAC,QAAA,GAAAA,QAAA;AAEK,MAAOE,SAAS;EAEpBN,YAAqBO,KAAuB;IAAvB,KAAAA,KAAK,GAALA,KAAK;IADjB,KAAAL,IAAI;EACkC;;AAChDC,OAAA,CAAAG,SAAA,GAAAA,SAAA;AAEK,MAAOE,YAAY;EAEvBR,YAAqBS,QAAqB;IAArB,KAAAA,QAAQ,GAARA,QAAQ;IADpB,KAAAP,IAAI;EACgC;;AAG/C;;;AAAAC,OAAA,CAAAK,YAAA,GAAAA,YAAA;AAGM,SAAUE,OAAOA,CAAIT,MAAS;EAClC,OAAO,IAAIF,OAAO,CAACE,MAAM,CAAC;AAC5B;AAEA;;;AAGM,SAAUU,QAAQA,CAAIN,CAAU;EACpC,OAAO,IAAID,QAAQ,CAACC,CAAC,CAAC;AACxB;AAEA;;;AAGM,SAAUO,SAASA,CAA+BL,KAAQ;EAC9D,OAAO,IAAID,SAAS,CAACC,KAAK,CAAC;AAC7B;AAEA;;;AAGM,SAAUM,YAAYA,CAAIJ,QAAqB;EACnD,OAAO,IAAID,YAAY,CAACC,QAAQ,CAAC;AACnC;AAEM,SAAUK,QAAQA,CAAIT,CAAU;EACpC,IAAIU,QAAQ,GAAaC,eAAA,CAAAC,OAAA,CAAAC,UAAA,YAAS;EAClC,MAAMC,GAAG,GAAgBA,CAAA,KAAK;IAC5B,IAAIC,eAAA,CAAAC,MAAA,CAAAN,QAAQ,CAAS,EAAE;MACrB,OAAOA,QAAQ,CAACO,KAAK;IACvB,CAAC,MAAM;MACL,MAAMC,CAAC,GAAIlB,CAAC,EAAE;MACdU,QAAQ,GAAGC,eAAA,CAAAQ,IAAA,CAAKD,CAAC,EAAAL,UAAA,YAAC;MAClB,OAAOK,CAAC;IACV;EACF,CAAC;EAED,OAAOE,eAAA,CAAAC,OAAA,CAAGP,GAAG,EAAAD,UAAA,YAAC;AAChB;AAEA;;;AAGM,SAAUS,OAAOA,CAAUC,IAAqB,EAAEC,IAA8B;EACpF,QAAQD,IAAI,CAAC1B,IAAI;IACf;MACE,OAAO2B,IAAI,CAACC,SAAS,CAACF,IAAI,CAAC3B,MAAM,CAAC;IACpC;MACE,OAAOwB,eAAA,CAAAM,KAAA,CAAS,MAAMF,IAAI,CAACC,SAAS,CAACF,IAAI,CAACvB,CAAC,EAAE,CAAC,EAAAa,UAAA,YAAC;IACjD;MACE,OAAOc,WAAW,CAACJ,IAAI,CAACrB,KAAK,EAAEsB,IAAI,CAAC;IACtC;MACE,OAAOI,cAAc,CAACL,IAAI,CAACnB,QAAQ,EAAEoB,IAAI,CAAC;EAC9C;AACF;AAEA,SAASG,WAAWA,CAAOzB,KAAuB,EAAEsB,IAAkC;EACpF,IAAItB,KAAK,CAAC2B,MAAM,KAAK,CAAC,EAAE,OAAAT,eAAA,CAAAU,IAAA,CAAe,KAClC,IAAI5B,KAAK,CAAC2B,MAAM,KAAK,CAAC,EAAE,OAAOL,IAAI,CAACC,SAAS,CAACvB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KACxD;IACH,OAAO6B,eAAA,CAAAC,YAAA,CAAA9B,KAAK,EAAQgB,CAAC,IAAKM,IAAI,CAACC,SAAS,CAACP,CAAC,CAAC,CAAC;EAC9C;AACF;AAEA,SAASU,cAAcA,CAAOxB,QAAqB,EAAEoB,IAAkC;EACrF,OAAOJ,eAAA,CAAAa,OAAA,CAAW7B,QAAQ,EAAGc,CAAC,IAAKM,IAAI,CAACC,SAAS,CAACP,CAAC,CAAC,EAAAL,UAAA,aAAC;AACvD","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=Producer.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Producer.cjs","names":[],"sources":["../../_src/Push/Producer.ts"],"sourcesContent":[null],"mappings":"","ignoreList":[]}
@@ -0,0 +1,219 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.WithEarlyExit = exports.UnsafeSink = exports.Sink = void 0;
7
+ exports.makeSink = makeSink;
8
+ exports.provideSomeEnvironment = provideSomeEnvironment;
9
+ exports.unsafeMakeSink = void 0;
10
+ exports.withEarlyExit = withEarlyExit;
11
+ var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/data/Newtype"));
12
+ var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/io/IO/api"));
13
+ var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/io/IO/api/asyncIO"));
14
+ var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/io/IO/api/environment"));
15
+ var tsplus_module_5 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/data/Maybe/destructors"));
16
+ var _IO = /*#__PURE__*/require("@fncts/io/IO");
17
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
18
+ const fileName_1 = "(@fncts/io) src/Push/Sink.ts";
19
+ const unsafeMakeSink = exports.unsafeMakeSink = unsafeMakeSink_1;
20
+ const Sink = exports.Sink = /*#__PURE__*/tsplus_module_1.newtype();
21
+ /**
22
+ * @tsplus type fncts.io.Push.Sink
23
+ * @tsplus companion fncts.io.Push.SinkOps
24
+ */
25
+ class UnsafeSink {}
26
+ /**
27
+ * @tsplus static fncts.io.Push.SinkOps unsafeMake
28
+ */
29
+ exports.UnsafeSink = UnsafeSink;
30
+ function unsafeMakeSink_1(onSuccess, onFailure) {
31
+ return new class extends UnsafeSink {
32
+ constructor() {
33
+ super(...arguments);
34
+ this.onSuccess = onSuccess;
35
+ this.onFailure = onFailure;
36
+ }
37
+ }();
38
+ }
39
+ /**
40
+ * @tsplus static fncts.io.Push.SinkOps __call
41
+ */
42
+ function makeSink(onSuccess, onFailure) {
43
+ return Sink.get(tsplus_module_2.succeed(() => unsafeMakeSink_1(onSuccess, onFailure), fileName_1 + ":56:21"));
44
+ }
45
+ class WithEarlyExit extends UnsafeSink {
46
+ constructor(onSuccess, onFailure, earlyExit) {
47
+ super();
48
+ this.onSuccess = onSuccess;
49
+ this.onFailure = onFailure;
50
+ this.earlyExit = earlyExit;
51
+ }
52
+ }
53
+ /**
54
+ * @tsplus static fncts.io.Push.SinkOps withEarlyExit
55
+ */
56
+ exports.WithEarlyExit = WithEarlyExit;
57
+ function withEarlyExit(sink, f) {
58
+ return tsplus_module_3.asyncIO(resume => {
59
+ const earlyExit = new WithEarlyExit(value => sink.onSuccess(value), cause => sink.onFailure(cause), tsplus_module_2.succeed(() => resume(tsplus_module_2.unit), fileName_1 + ":80:9"));
60
+ return tsplus_module_2.matchCauseIO(cause => sink.onFailure(cause), () => earlyExit.earlyExit, fileName_1 + ":83:37")(f(earlyExit));
61
+ }, fileName_1 + ":76:20");
62
+ }
63
+ class ProvideSomeEnvironmentSink extends UnsafeSink {
64
+ constructor(sink, environment) {
65
+ super();
66
+ this.sink = sink;
67
+ this.environment = environment;
68
+ this.onFailure = this.onFailure.bind(this);
69
+ this.onSuccess = this.onSuccess.bind(this);
70
+ }
71
+ onFailure(cause) {
72
+ return tsplus_module_4.provideSomeEnvironment(this.environment, fileName_1 + ":101:61")(this.sink.onFailure(cause));
73
+ }
74
+ onSuccess(value) {
75
+ return tsplus_module_4.provideSomeEnvironment(this.environment, fileName_1 + ":105:61")(this.sink.onSuccess(value));
76
+ }
77
+ }
78
+ /**
79
+ * @tsplus pipeable fncts.io.Push.Sink provideSomeEnvironment
80
+ */
81
+ function provideSomeEnvironment(environment) {
82
+ return self => {
83
+ return Sink.get(tsplus_module_2.map(sink => new ProvideSomeEnvironmentSink(sink, environment), fileName_1 + ":114:46")(Sink.reverseGet(self)));
84
+ };
85
+ }
86
+ class MapSink extends UnsafeSink {
87
+ constructor(sink, f) {
88
+ super();
89
+ this.sink = sink;
90
+ this.f = f;
91
+ this.onFailure = this.onFailure.bind(this);
92
+ this.onSuccess = this.onSuccess.bind(this);
93
+ }
94
+ onFailure(cause) {
95
+ return this.sink.onFailure(cause);
96
+ }
97
+ onSuccess(value) {
98
+ return this.sink.onSuccess(this.f(value));
99
+ }
100
+ }
101
+ class FilterSink extends UnsafeSink {
102
+ constructor(sink, predicate) {
103
+ super();
104
+ this.sink = sink;
105
+ this.predicate = predicate;
106
+ this.onFailure = this.onFailure.bind(this);
107
+ this.onSuccess = this.onSuccess.bind(this);
108
+ }
109
+ onFailure(cause) {
110
+ return this.sink.onFailure(cause);
111
+ }
112
+ onSuccess(value) {
113
+ if (this.predicate(value)) {
114
+ return this.sink.onSuccess(value);
115
+ } else {
116
+ return tsplus_module_2.unit;
117
+ }
118
+ }
119
+ }
120
+ class FilterMapSink extends UnsafeSink {
121
+ constructor(sink, f) {
122
+ super();
123
+ this.sink = sink;
124
+ this.f = f;
125
+ this.onFailure = this.onFailure.bind(this);
126
+ this.onSuccess = this.onSuccess.bind(this);
127
+ }
128
+ onFailure(cause) {
129
+ return this.sink.onFailure(cause);
130
+ }
131
+ onSuccess(value) {
132
+ return tsplus_module_5.match(() => tsplus_module_2.unit, b => this.sink.onSuccess(b))(this.f(value));
133
+ }
134
+ }
135
+ class MapIOSink extends UnsafeSink {
136
+ constructor(sink, f) {
137
+ super();
138
+ this.sink = sink;
139
+ this.f = f;
140
+ this.onFailure = this.onFailure.bind(this);
141
+ this.onSuccess = this.onSuccess.bind(this);
142
+ }
143
+ onFailure(cause) {
144
+ return this.sink.onFailure(cause);
145
+ }
146
+ onSuccess(value) {
147
+ return tsplus_module_2.matchCauseIO(cause => this.sink.onFailure(cause), a => this.sink.onSuccess(a), fileName_1 + ":197:38")(this.f(value));
148
+ }
149
+ }
150
+ class FilterMapIOSink extends UnsafeSink {
151
+ constructor(sink, f) {
152
+ super();
153
+ this.sink = sink;
154
+ this.f = f;
155
+ this.onFailure = this.onFailure.bind(this);
156
+ this.onSuccess = this.onSuccess.bind(this);
157
+ }
158
+ onFailure(cause) {
159
+ return this.sink.onFailure(cause);
160
+ }
161
+ onSuccess(value) {
162
+ return tsplus_module_2.matchCauseIO(cause => this.sink.onFailure(cause), ma => tsplus_module_5.match(() => tsplus_module_2.unit, a => this.sink.onSuccess(a))(ma), fileName_1 + ":219:38")(this.f(value));
163
+ }
164
+ }
165
+ class FilterIOSink extends UnsafeSink {
166
+ constructor(sink, f) {
167
+ super();
168
+ this.sink = sink;
169
+ this.f = f;
170
+ this.onFailure = this.onFailure.bind(this);
171
+ this.onSuccess = this.onSuccess.bind(this);
172
+ }
173
+ onFailure(cause) {
174
+ return this.sink.onFailure(cause);
175
+ }
176
+ onSuccess(value) {
177
+ return tsplus_module_2.matchCauseIO(cause => this.sink.onFailure(cause), b => {
178
+ if (b) {
179
+ return this.sink.onSuccess(value);
180
+ } else {
181
+ return tsplus_module_2.unit;
182
+ }
183
+ }, fileName_1 + ":245:38")(this.f(value));
184
+ }
185
+ }
186
+ class TapIOSink extends UnsafeSink {
187
+ constructor(sink, f) {
188
+ super();
189
+ this.sink = sink;
190
+ this.f = f;
191
+ this.onFailure = this.onFailure.bind(this);
192
+ this.onSuccess = this.onSuccess.bind(this);
193
+ }
194
+ onFailure(cause) {
195
+ return this.sink.onFailure(cause);
196
+ }
197
+ onSuccess(value) {
198
+ return tsplus_module_2.matchCauseIO(cause => this.sink.onFailure(cause), () => this.sink.onSuccess(value), fileName_1 + ":273:38")(this.f(value));
199
+ }
200
+ }
201
+ class LoopSink extends UnsafeSink {
202
+ constructor(sink, seed, f) {
203
+ super();
204
+ this.sink = sink;
205
+ this.seed = seed;
206
+ this.f = f;
207
+ this.onFailure = this.onFailure.bind(this);
208
+ this.onSuccess = this.onSuccess.bind(this);
209
+ }
210
+ onFailure(cause) {
211
+ return this.sink.onFailure(cause);
212
+ }
213
+ onSuccess(value) {
214
+ const [c, acc] = this.f(this.seed, value);
215
+ this.seed = acc;
216
+ return this.sink.onSuccess(c);
217
+ }
218
+ }
219
+ //# sourceMappingURL=Sink.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sink.cjs","names":["_IO","require","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","unsafeMakeSink","exports","unsafeMakeSink_1","Sink","tsplus_module_1","newtype","UnsafeSink","onSuccess","onFailure","constructor","makeSink","tsplus_module_2","succeed","fileName_1","WithEarlyExit","earlyExit","withEarlyExit","sink","tsplus_module_3","asyncIO","resume","value","cause","unit","matchCauseIO","ProvideSomeEnvironmentSink","environment","bind","tsplus_module_4","provideSomeEnvironment","self","map","reverseGet","MapSink","FilterSink","predicate","FilterMapSink","tsplus_module_5","match","b","MapIOSink","a","FilterMapIOSink","ma","FilterIOSink","TapIOSink","LoopSink","seed","c","acc"],"sources":["../../_src/Push/Sink.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}