@fncts/base 0.0.29 → 0.0.31

Sign up to get free protection for your applications and to get access to all the features.
Files changed (110) hide show
  1. package/_cjs/collection/immutable/HashSet/api.cjs +18 -7
  2. package/_cjs/collection/immutable/HashSet/api.cjs.map +1 -1
  3. package/_cjs/collection/immutable/HashSet/definition.cjs +2 -2
  4. package/_cjs/collection/immutable/HashSet/definition.cjs.map +1 -1
  5. package/_cjs/control/Eval/api.cjs +4 -1
  6. package/_cjs/control/Eval/api.cjs.map +1 -1
  7. package/_cjs/control/Eval/constructors.cjs +9 -2
  8. package/_cjs/control/Eval/constructors.cjs.map +1 -1
  9. package/_cjs/control/Eval/definition.cjs +10 -28
  10. package/_cjs/control/Eval/definition.cjs.map +1 -1
  11. package/_cjs/control/Eval/run.cjs +7 -7
  12. package/_cjs/control/Eval/run.cjs.map +1 -1
  13. package/_cjs/control/{Z → Pure}/api.cjs +146 -115
  14. package/_cjs/control/Pure/api.cjs.map +1 -0
  15. package/_cjs/control/Pure/definition.cjs +78 -0
  16. package/_cjs/control/Pure/definition.cjs.map +1 -0
  17. package/_cjs/control/{Z → Pure}/instances.cjs +1 -1
  18. package/_cjs/control/Pure/instances.cjs.map +1 -0
  19. package/_cjs/control/{Z → Pure}/runtime.cjs +67 -66
  20. package/_cjs/control/Pure/runtime.cjs.map +1 -0
  21. package/_cjs/control/{Z.cjs → Pure.cjs} +5 -5
  22. package/_cjs/control/Pure.cjs.map +1 -0
  23. package/_cjs/data/Date/definition.cjs +6 -0
  24. package/_cjs/data/Date/definition.cjs.map +1 -0
  25. package/_cjs/data/Date.cjs +17 -0
  26. package/_cjs/data/Date.cjs.map +1 -0
  27. package/_cjs/data/Showable/show.cjs +31 -31
  28. package/_cjs/data/Showable/show.cjs.map +1 -1
  29. package/_mjs/collection/immutable/HashSet/api.mjs +17 -7
  30. package/_mjs/collection/immutable/HashSet/api.mjs.map +1 -1
  31. package/_mjs/collection/immutable/HashSet/definition.mjs +2 -2
  32. package/_mjs/collection/immutable/HashSet/definition.mjs.map +1 -1
  33. package/_mjs/control/Eval/api.mjs +5 -2
  34. package/_mjs/control/Eval/api.mjs.map +1 -1
  35. package/_mjs/control/Eval/constructors.mjs +10 -3
  36. package/_mjs/control/Eval/constructors.mjs.map +1 -1
  37. package/_mjs/control/Eval/definition.mjs +7 -25
  38. package/_mjs/control/Eval/definition.mjs.map +1 -1
  39. package/_mjs/control/Eval/run.mjs +7 -7
  40. package/_mjs/control/Eval/run.mjs.map +1 -1
  41. package/_mjs/control/{Z → Pure}/api.mjs +134 -104
  42. package/_mjs/control/Pure/api.mjs.map +1 -0
  43. package/_mjs/control/Pure/definition.mjs +60 -0
  44. package/_mjs/control/Pure/definition.mjs.map +1 -0
  45. package/_mjs/control/{Z → Pure}/instances.mjs +1 -1
  46. package/_mjs/control/Pure/instances.mjs.map +1 -0
  47. package/_mjs/control/{Z → Pure}/runtime.mjs +68 -67
  48. package/_mjs/control/Pure/runtime.mjs.map +1 -0
  49. package/_mjs/control/Pure.mjs +6 -0
  50. package/_mjs/control/Pure.mjs.map +1 -0
  51. package/_mjs/data/Date/definition.mjs +2 -0
  52. package/_mjs/data/Date/definition.mjs.map +1 -0
  53. package/_mjs/data/Date.mjs +3 -0
  54. package/_mjs/data/Date.mjs.map +1 -0
  55. package/_mjs/data/Showable/show.mjs +31 -31
  56. package/_mjs/data/Showable/show.mjs.map +1 -1
  57. package/_src/collection/immutable/HashSet/api.ts +12 -1
  58. package/_src/collection/immutable/HashSet/definition.ts +2 -2
  59. package/_src/control/Eval/api.ts +5 -2
  60. package/_src/control/Eval/constructors.ts +10 -3
  61. package/_src/control/Eval/definition.ts +39 -27
  62. package/_src/control/Eval/run.ts +7 -7
  63. package/_src/control/Pure/api.ts +629 -0
  64. package/_src/control/Pure/definition.ts +222 -0
  65. package/_src/control/{Z → Pure}/instances.ts +3 -3
  66. package/_src/control/{Z → Pure}/runtime.ts +73 -76
  67. package/_src/control/Pure.ts +6 -0
  68. package/_src/control.ts +1 -1
  69. package/_src/data/Date/definition.ts +6 -0
  70. package/_src/data/Date.ts +3 -0
  71. package/_src/data/Showable/show.ts +55 -53
  72. package/_src/data.ts +1 -0
  73. package/_src/global.ts +1 -1
  74. package/collection/immutable/HashSet/api.d.ts +5 -0
  75. package/collection/immutable/HashSet/definition.d.ts +1 -1
  76. package/control/Eval/constructors.d.ts +4 -0
  77. package/control/Eval/definition.d.ts +25 -28
  78. package/control/Pure/api.d.ts +345 -0
  79. package/control/Pure/definition.d.ts +156 -0
  80. package/control/Pure/instances.d.ts +8 -0
  81. package/control/Pure/runtime.d.ts +56 -0
  82. package/control/Pure.d.ts +4 -0
  83. package/control.d.ts +1 -1
  84. package/data/Date/definition.d.ts +9 -0
  85. package/data/Date.d.ts +1 -0
  86. package/data/Showable/show.d.ts +2 -2
  87. package/data.d.ts +1 -0
  88. package/global.d.ts +1 -1
  89. package/package.json +1 -1
  90. package/_cjs/control/Z/api.cjs.map +0 -1
  91. package/_cjs/control/Z/definition.cjs +0 -163
  92. package/_cjs/control/Z/definition.cjs.map +0 -1
  93. package/_cjs/control/Z/instances.cjs.map +0 -1
  94. package/_cjs/control/Z/runtime.cjs.map +0 -1
  95. package/_cjs/control/Z.cjs.map +0 -1
  96. package/_mjs/control/Z/api.mjs.map +0 -1
  97. package/_mjs/control/Z/definition.mjs +0 -145
  98. package/_mjs/control/Z/definition.mjs.map +0 -1
  99. package/_mjs/control/Z/instances.mjs.map +0 -1
  100. package/_mjs/control/Z/runtime.mjs.map +0 -1
  101. package/_mjs/control/Z.mjs +0 -6
  102. package/_mjs/control/Z.mjs.map +0 -1
  103. package/_src/control/Z/api.ts +0 -590
  104. package/_src/control/Z/definition.ts +0 -199
  105. package/_src/control/Z.ts +0 -6
  106. package/control/Z/api.d.ts +0 -345
  107. package/control/Z/definition.d.ts +0 -151
  108. package/control/Z/instances.d.ts +0 -8
  109. package/control/Z/runtime.d.ts +0 -56
  110. package/control/Z.d.ts +0 -4
@@ -1,4 +1,4 @@
1
- const fileName_1 = "(@fncts/base) src/control/Z/api.ts";
1
+ const fileName_1 = "(@fncts/base) src/control/Pure/api.ts";
2
2
  import * as tsplus_module_1 from "@fncts/base/data/Either/destructors";
3
3
  import * as tsplus_module_2 from "@fncts/base/data/Maybe/api";
4
4
  import * as tsplus_module_3 from "@fncts/base/data/Either/constructors";
@@ -11,7 +11,7 @@ export const catchAll = catchAll_1;
11
11
  export const flatMap = flatMap_1;
12
12
  export const crossWith = crossWith_1;
13
13
  export const defer = defer_1;
14
- export const environmentWithZ = environmentWithZ_1;
14
+ export const environmentWithPure = environmentWithPure_1;
15
15
  export const failNow = failNow_1;
16
16
  export const failCause = failCause_1;
17
17
  export const failCauseNow = failCauseNow_1;
@@ -21,30 +21,29 @@ export const map = map_1;
21
21
  export const mapLog = mapLog_1;
22
22
  export const mapState = mapState_1;
23
23
  export const match = match_1;
24
- export const matchZ = matchZ_1;
25
- export const matchCauseZ = matchCauseZ_1;
26
- export const matchLogCauseZ = matchLogCauseZ_1;
24
+ export const matchPure = matchPure_1;
25
+ export const matchCausePure = matchCausePure_1;
26
+ export const matchLogCausePure = matchLogCausePure_1;
27
27
  export const modify = modify_1;
28
28
  export const provideEnvironment = provideEnvironment_1;
29
29
  export const repeatN = repeatN_1;
30
30
  export const repeatUntil = repeatUntil_1;
31
- export const succeed = succeed_1;
32
31
  export const succeedNow = succeedNow_1;
33
32
  export const tellAll = tellAll_1;
34
33
  export const transform = transform_1;
35
34
  export const update = update_1;
36
35
  export const writeAll = writeAll_1;
37
36
  export const zipWith = zipWith_1;
37
+ import { PurePrimitive } from "@fncts/base/control/Pure/definition";
38
38
  import { identity, tuple } from "../../data/function.mjs";
39
- import { Access, Chain, Defer, Fail, MapLog, Match, Modify, Provide, Succeed, SucceedNow, Tell } from "./definition.mjs";
40
39
  /**
41
- * @tsplus getter fncts.control.Z absolve
40
+ * @tsplus getter fncts.control.Pure absolve
42
41
  */
43
42
  export function absolve(fa) {
44
43
  return flatMap_1(ea => tsplus_module_1.match(failNow_1, succeedNow_1)(ea))(fa);
45
44
  }
46
45
  /**
47
- * @tsplus pipeable fncts.control.Z ap
46
+ * @tsplus pipeable fncts.control.Pure ap
48
47
  */
49
48
  export function ap(fb) {
50
49
  return self => {
@@ -52,7 +51,7 @@ export function ap(fb) {
52
51
  };
53
52
  }
54
53
  /**
55
- * @tsplus pipeable fncts.control.Z zipLeft
54
+ * @tsplus pipeable fncts.control.Pure zipLeft
56
55
  */
57
56
  export function zipLeft(fb) {
58
57
  return fa => {
@@ -60,7 +59,7 @@ export function zipLeft(fb) {
60
59
  };
61
60
  }
62
61
  /**
63
- * @tsplus pipeable fncts.control.Z zipRight
62
+ * @tsplus pipeable fncts.control.Pure zipRight
64
63
  */
65
64
  export function zipRight(fb) {
66
65
  return fa => {
@@ -68,25 +67,25 @@ export function zipRight(fb) {
68
67
  };
69
68
  }
70
69
  /**
71
- * @tsplus pipeable fncts.control.Z bimap
70
+ * @tsplus pipeable fncts.control.Pure bimap
72
71
  */
73
72
  export function bimap(f, g) {
74
73
  return pab => {
75
- return matchZ_1(e => failNow_1(f(e), fileName_1 + ":44:23"), a => succeedNow_1(g(a), fileName_1 + ":45:26"))(pab);
74
+ return matchPure_1(e => failNow_1(f(e), fileName_1 + ":47:26"), a => succeedNow_1(g(a), fileName_1 + ":48:29"))(pab);
76
75
  };
77
76
  }
78
77
  /**
79
78
  * Recovers from all errors.
80
79
  *
81
- * @tsplus pipeable fncts.control.Z catchAll
80
+ * @tsplus pipeable fncts.control.Pure catchAll
82
81
  */
83
82
  function catchAll_1(onFailure) {
84
83
  return fa => {
85
- return matchZ_1(onFailure, succeedNow_1)(fa);
84
+ return matchPure_1(onFailure, succeedNow_1)(fa);
86
85
  };
87
86
  }
88
87
  /**
89
- * @tsplus pipeable fncts.control.Z catchJust
88
+ * @tsplus pipeable fncts.control.Pure catchJust
90
89
  */
91
90
  export function catchJust(f) {
92
91
  return fa => {
@@ -94,26 +93,29 @@ export function catchJust(f) {
94
93
  };
95
94
  }
96
95
  /**
97
- * @tsplus pipeable fncts.control.Z flatMap
96
+ * @tsplus pipeable fncts.control.Pure flatMap
98
97
  */
99
98
  function flatMap_1(f) {
100
99
  return ma => {
101
- return new Chain(ma, f);
100
+ const z = new PurePrimitive(5 /* PureTag.Chain */);
101
+ z.i0 = ma;
102
+ z.i1 = f;
103
+ return z;
102
104
  };
103
105
  }
104
106
  /**
105
- * @tsplus pipeable fncts.control.Z contramapEnvironment
107
+ * @tsplus pipeable fncts.control.Pure contramapEnvironment
106
108
  */
107
109
  export function contramapEnvironment(f) {
108
110
  return ma => {
109
- return environmentWithZ_1(r => provideEnvironment_1(f(r))(ma));
111
+ return environmentWithPure_1(r => provideEnvironment_1(f(r))(ma));
110
112
  };
111
113
  }
112
114
  /**
113
115
  * Transforms the initial state of this computation` with the specified
114
116
  * function.
115
117
  *
116
- * @tsplus pipeable fncts.control.Z contramapState
118
+ * @tsplus pipeable fncts.control.Pure contramapState
117
119
  */
118
120
  export function contramapState(f) {
119
121
  return fa => {
@@ -121,7 +123,7 @@ export function contramapState(f) {
121
123
  };
122
124
  }
123
125
  /**
124
- * @tsplus pipeable fncts.control.Z cross
126
+ * @tsplus pipeable fncts.control.Pure cross
125
127
  */
126
128
  export function cross(fb) {
127
129
  return fa => {
@@ -129,7 +131,7 @@ export function cross(fb) {
129
131
  };
130
132
  }
131
133
  /**
132
- * @tsplus pipeable fncts.control.Z crossWith
134
+ * @tsplus pipeable fncts.control.Pure crossWith
133
135
  */
134
136
  function crossWith_1(fb, f) {
135
137
  return fa => {
@@ -137,73 +139,83 @@ function crossWith_1(fb, f) {
137
139
  };
138
140
  }
139
141
  /**
140
- * @tsplus static fncts.control.ZOps defer
142
+ * @tsplus static fncts.control.PureOps defer
141
143
  */
142
144
  function defer_1(ma, __tsplusTrace) {
143
- return new Defer(ma);
145
+ const z = new PurePrimitive(2 /* PureTag.Defer */);
146
+ z.i0 = ma;
147
+ return z;
144
148
  }
145
149
  /**
146
150
  * Returns a computation whose failure and success have been lifted into an
147
151
  * `Either`. The resulting computation cannot fail, because the failure case
148
152
  * has been exposed as part of the `Either` success case.
149
153
  *
150
- * @tsplus getter fncts.control.Z either
154
+ * @tsplus getter fncts.control.Pure either
151
155
  */
152
156
  export function either(fa) {
153
157
  return match_1(tsplus_module_3.left, tsplus_module_3.right)(fa);
154
158
  }
155
159
  /**
156
- * @tsplus static fncts.control.ZOps environment
160
+ * @tsplus static fncts.control.PureOps environment
157
161
  */
158
162
  export function environment() {
159
- return new Access(r => succeedNow_1(r, fileName_1 + ":143:40"));
163
+ const z = new PurePrimitive(7 /* PureTag.Access */);
164
+ z.i0 = r => succeedNow_1(r, fileName_1 + ":152:40");
165
+ return z;
160
166
  }
161
167
  /**
162
- * @tsplus static fncts.control.ZOps environmentWith
168
+ * @tsplus static fncts.control.PureOps environmentWith
163
169
  */
164
170
  export function environmentWith(f) {
165
- return new Access(r => succeed_1(() => f(r), fileName_1 + ":150:35"));
171
+ const z = new PurePrimitive(7 /* PureTag.Access */);
172
+ z.i0 = r => succeedNow_1(f(r), fileName_1 + ":161:40");
173
+ return z;
166
174
  }
167
175
  /**
168
- * @tsplus static fncts.control.ZOps environmentWithZ
176
+ * @tsplus static fncts.control.PureOps environmentWithPure
169
177
  */
170
- function environmentWithZ_1(f) {
171
- return new Access(f);
178
+ function environmentWithPure_1(f) {
179
+ const z = new PurePrimitive(7 /* PureTag.Access */);
180
+ z.i0 = f;
181
+ return z;
172
182
  }
173
183
  /**
174
184
  * Erases the current log
175
185
  *
176
- * @tsplus getter fncts.control.Z erase
186
+ * @tsplus getter fncts.control.Pure erase
177
187
  */
178
188
  export function erase(wa) {
179
189
  return mapLog_1(() => tsplus_module_4.empty())(wa);
180
190
  }
181
191
  /**
182
- * @tsplus static fncts.control.ZOps fail
192
+ * @tsplus static fncts.control.PureOps fail
183
193
  */
184
194
  export function fail(e, __tsplusTrace) {
185
195
  return failCause_1(() => tsplus_module_5.fail(e()), __tsplusTrace);
186
196
  }
187
197
  /**
188
- * @tsplus static fncts.control.ZOps failNow
198
+ * @tsplus static fncts.control.PureOps failNow
189
199
  */
190
200
  function failNow_1(e, __tsplusTrace) {
191
201
  return failCauseNow_1(tsplus_module_5.fail(e), __tsplusTrace);
192
202
  }
193
203
  /**
194
- * @tsplus static fncts.control.ZOps failCause
204
+ * @tsplus static fncts.control.PureOps failCause
195
205
  */
196
206
  function failCause_1(cause, __tsplusTrace) {
197
207
  return defer_1(() => failCauseNow_1(cause(), __tsplusTrace), __tsplusTrace);
198
208
  }
199
209
  /**
200
- * @tsplus static fncts.control.ZOps failCauseNow
210
+ * @tsplus static fncts.control.PureOps failCauseNow
201
211
  */
202
212
  function failCauseNow_1(cause, __tsplusTrace) {
203
- return new Fail(cause);
213
+ const z = new PurePrimitive(3 /* PureTag.Fail */);
214
+ z.i0 = cause;
215
+ return z;
204
216
  }
205
217
  /**
206
- * @tsplus getter fncts.control.Z flatten
218
+ * @tsplus getter fncts.control.Pure flatten
207
219
  */
208
220
  export function flatten(mma) {
209
221
  return flatMap_1(identity)(mma);
@@ -211,43 +223,43 @@ export function flatten(mma) {
211
223
  /**
212
224
  * Constructs a computation that returns the initial state unchanged.
213
225
  *
214
- * @tsplus static fncts.control.ZOps get
226
+ * @tsplus static fncts.control.PureOps get
215
227
  */
216
228
  function get_1() {
217
229
  return modify_1(s => [s, s]);
218
230
  }
219
231
  /**
220
- * @tsplus static fncts.control.ZOps gets
232
+ * @tsplus static fncts.control.PureOps gets
221
233
  */
222
234
  export function gets(f) {
223
235
  return modify_1(s => [f(s), s]);
224
236
  }
225
237
  /**
226
- * @tsplus static fncts.control.ZOps getsZ
238
+ * @tsplus static fncts.control.PureOps getsPure
227
239
  */
228
- export function getsZ(f) {
240
+ export function getsPure(f) {
229
241
  return flatMap_1(f)(get_1());
230
242
  }
231
243
  /**
232
- * @tsplus static fncts.control.ZOps halt
244
+ * @tsplus static fncts.control.PureOps halt
233
245
  */
234
246
  export function halt(defect, __tsplusTrace) {
235
247
  return failCause_1(() => tsplus_module_5.halt(defect()), __tsplusTrace);
236
248
  }
237
249
  /**
238
- * @tsplus static fncts.control.ZOps haltNow
250
+ * @tsplus static fncts.control.PureOps haltNow
239
251
  */
240
252
  export function haltNow(defect, __tsplusTrace) {
241
253
  return failCauseNow_1(tsplus_module_5.halt(defect), __tsplusTrace);
242
254
  }
243
255
  /**
244
- * @tsplus getter fncts.control.Z listen
256
+ * @tsplus getter fncts.control.Pure listen
245
257
  */
246
258
  function listen_1(wa) {
247
- return matchLogCauseZ_1((_, e) => failCauseNow_1(e, fileName_1 + ":250:29"), (ws, a) => succeedNow_1([a, ws], fileName_1 + ":251:28"))(wa);
259
+ return matchLogCausePure_1((_, e) => failCauseNow_1(e, fileName_1 + ":269:32"), (ws, a) => succeedNow_1([a, ws], fileName_1 + ":270:31"))(wa);
248
260
  }
249
261
  /**
250
- * @tsplus pipeable fncts.control.Z listens
262
+ * @tsplus pipeable fncts.control.Pure listens
251
263
  */
252
264
  export function listens(f) {
253
265
  return wa => {
@@ -255,35 +267,38 @@ export function listens(f) {
255
267
  };
256
268
  }
257
269
  /**
258
- * @tsplus pipeable fncts.control.Z map
270
+ * @tsplus pipeable fncts.control.Pure map
259
271
  */
260
272
  function map_1(f) {
261
273
  return fa => {
262
- return flatMap_1(a => succeedNow_1(f(a), fileName_1 + ":269:42"))(fa);
274
+ return flatMap_1(a => succeedNow_1(f(a), fileName_1 + ":288:45"))(fa);
263
275
  };
264
276
  }
265
277
  /**
266
- * @tsplus pipeable fncts.control.Z mapError
278
+ * @tsplus pipeable fncts.control.Pure mapError
267
279
  */
268
280
  export function mapError(f) {
269
281
  return pab => {
270
- return matchZ_1(e => failNow_1(f(e), fileName_1 + ":278:39"), succeedNow_1)(pab);
282
+ return matchPure_1(e => failNow_1(f(e), fileName_1 + ":297:45"), succeedNow_1)(pab);
271
283
  };
272
284
  }
273
285
  /**
274
286
  * Modifies the current log with the specified function
275
287
  *
276
- * @tsplus pipeable fncts.control.Z mapLog
288
+ * @tsplus pipeable fncts.control.Pure mapLog
277
289
  */
278
290
  function mapLog_1(f) {
279
291
  return wa => {
280
- return new MapLog(wa, f);
292
+ const z = new PurePrimitive(11 /* PureTag.MapLog */);
293
+ z.i0 = wa;
294
+ z.i1 = f;
295
+ return z;
281
296
  };
282
297
  }
283
298
  /**
284
299
  * Modifies the current state with the specified function
285
300
  *
286
- * @tsplus pipeable fncts.control.Z mapState
301
+ * @tsplus pipeable fncts.control.Pure mapState
287
302
  */
288
303
  function mapState_1(f) {
289
304
  return ma => {
@@ -295,38 +310,38 @@ function mapState_1(f) {
295
310
  * a computation that does not fail, but succeeds with the value of the left
296
311
  * or right function passed to `match`.
297
312
  *
298
- * @tsplus pipeable fncts.control.Z match
313
+ * @tsplus pipeable fncts.control.Pure match
299
314
  */
300
315
  function match_1(onFailure, onSuccess) {
301
316
  return fa => {
302
- return matchZ_1(e => succeedNow_1(onFailure(e), fileName_1 + ":314:26"), a => succeedNow_1(onSuccess(a), fileName_1 + ":315:26"))(fa);
317
+ return matchPure_1(e => succeedNow_1(onFailure(e), fileName_1 + ":336:29"), a => succeedNow_1(onSuccess(a), fileName_1 + ":337:29"))(fa);
303
318
  };
304
319
  }
305
320
  /**
306
321
  * Recovers from errors by accepting one computation to execute for the case
307
322
  * of an error, and one computation to execute for the case of success.
308
323
  *
309
- * @tsplus pipeable fncts.control.Z matchZ
324
+ * @tsplus pipeable fncts.control.Pure matchPure
310
325
  */
311
- function matchZ_1(onFailure, onSuccess) {
326
+ function matchPure_1(onFailure, onSuccess) {
312
327
  return fa => {
313
- return matchCauseZ_1(cause => tsplus_module_1.match(onFailure, failCauseNow_1)(tsplus_module_5.failureOrCause(cause)), onSuccess)(fa);
328
+ return matchCausePure_1(cause => tsplus_module_1.match(onFailure, failCauseNow_1)(tsplus_module_5.failureOrCause(cause)), onSuccess)(fa);
314
329
  };
315
330
  }
316
331
  /**
317
- * @tsplus pipeable fncts.control.Z matchCauseZ
332
+ * @tsplus pipeable fncts.control.Pure matchCausePure
318
333
  */
319
- function matchCauseZ_1(onFailure, onSuccess) {
334
+ function matchCausePure_1(onFailure, onSuccess) {
320
335
  return fa => {
321
- return matchLogCauseZ_1((ws, e) => mapLog_1(w1s => tsplus_module_6.concat(w1s)(ws))(onFailure(e)), (ws, a) => mapLog_1(w2s => tsplus_module_6.concat(w2s)(ws))(onSuccess(a)))(fa);
336
+ return matchLogCausePure_1((ws, e) => mapLog_1(w1s => tsplus_module_6.concat(w1s)(ws))(onFailure(e)), (ws, a) => mapLog_1(w2s => tsplus_module_6.concat(w2s)(ws))(onSuccess(a)))(fa);
322
337
  };
323
338
  }
324
339
  /**
325
- * @tsplus pipeable fncts.control.Z matchLogZ
340
+ * @tsplus pipeable fncts.control.Pure matchLogPure
326
341
  */
327
- export function matchLogZ(onFailure, onSuccess) {
342
+ export function matchLogPure(onFailure, onSuccess) {
328
343
  return fa => {
329
- return matchLogCauseZ_1((ws, cause) => tsplus_module_1.match(e => onFailure(ws, e), failCauseNow_1)(tsplus_module_5.failureOrCause(cause)), onSuccess)(fa);
344
+ return matchLogCausePure_1((ws, cause) => tsplus_module_1.match(e => onFailure(ws, e), failCauseNow_1)(tsplus_module_5.failureOrCause(cause)), onSuccess)(fa);
330
345
  };
331
346
  }
332
347
  /**
@@ -337,60 +352,69 @@ export function matchLogZ(onFailure, onSuccess) {
337
352
  *
338
353
  * @note the log is cleared after being provided
339
354
  *
340
- * @tsplus pipeable fncts.control.Z matchLogCauseZ
355
+ * @tsplus pipeable fncts.control.Pure matchLogCausePure
341
356
  */
342
- function matchLogCauseZ_1(onFailure, onSuccess) {
357
+ function matchLogCausePure_1(onFailure, onSuccess) {
343
358
  return fa => {
344
- return new Match(fa, onFailure, onSuccess);
359
+ const z = new PurePrimitive(6 /* PureTag.Match */);
360
+ z.i0 = fa;
361
+ z.i1 = onFailure;
362
+ z.i2 = onSuccess;
363
+ return z;
345
364
  };
346
365
  }
347
366
  /**
348
367
  * Constructs a computation from the specified modify function
349
368
  *
350
- * @tsplus static fncts.control.ZOps modify
369
+ * @tsplus static fncts.control.PureOps modify
351
370
  */
352
371
  function modify_1(f) {
353
- return new Modify(f);
372
+ const z = new PurePrimitive(4 /* PureTag.Modify */);
373
+ z.i0 = f;
374
+ return z;
354
375
  }
355
376
  /**
356
377
  * Constructs a computation that may fail from the specified modify function.
357
378
  *
358
- * @tsplus static fncts.control.ZOps modifyEither
379
+ * @tsplus static fncts.control.PureOps modifyEither
359
380
  */
360
381
  export function modifyEither(f) {
361
- return flatMap_1(r => tsplus_module_1.match(failNow_1, ([a, s2]) => mapState_1(() => s2)(succeedNow_1(a, fileName_1 + ":401:65")))(r))(map_1(f)(get_1()));
382
+ return flatMap_1(r => tsplus_module_1.match(failNow_1, ([a, s2]) => mapState_1(() => s2)(succeedNow_1(a, fileName_1 + ":431:71")))(r))(map_1(f)(get_1()));
362
383
  }
363
384
  /**
364
- * @tsplus pipeable fncts.control.Z orElse
385
+ * @tsplus pipeable fncts.control.Pure orElse
365
386
  */
366
387
  export function orElse(fb) {
367
388
  return fa => {
368
- return matchZ_1(() => fb(), succeedNow_1)(fa);
389
+ return matchPure_1(() => fb(), succeedNow_1)(fa);
369
390
  };
370
391
  }
371
392
  /**
372
393
  * Executes this computation and returns its value, if it succeeds, but
373
394
  * otherwise executes the specified computation.
374
395
  *
375
- * @tsplus pipeable fncts.control.Z orElseEither
396
+ * @tsplus pipeable fncts.control.Pure orElseEither
376
397
  */
377
398
  export function orElseEither(that) {
378
399
  return fa => {
379
- return matchZ_1(() => map_1(tsplus_module_3.right)(that()), a => succeedNow_1(tsplus_module_3.left(a, fileName_1 + ":423:38"), fileName_1 + ":423:26"))(fa);
400
+ return matchPure_1(() => map_1(tsplus_module_3.right)(that()), a => succeedNow_1(tsplus_module_3.left(a, fileName_1 + ":453:41"), fileName_1 + ":453:29"))(fa);
380
401
  };
381
402
  }
382
403
  /**
383
- * @tsplus pipeable fncts.control.Z provideEnvironment
404
+ * @tsplus pipeable fncts.control.Pure provideEnvironment
384
405
  */
385
406
  function provideEnvironment_1(r) {
386
407
  return fa => {
387
- return new Provide(fa, r);
408
+ const z = new PurePrimitive(8 /* PureTag.Provide */);
409
+ z.i0 = fa;
410
+ z.i1 = r;
411
+ return z;
388
412
  };
389
413
  }
390
414
  /**
391
415
  * Constructs a computation that sets the state to the specified value.
392
416
  *
393
- * @tsplus static fncts.control.ZOps put
417
+ * @tsplus static fncts.control.PureOps put
394
418
  */
395
419
  export function put(s) {
396
420
  return modify_1(() => [undefined, s]);
@@ -399,38 +423,42 @@ export function put(s) {
399
423
  * Repeats this computation the specified number of times (or until the first failure)
400
424
  * passing the updated state to each successive repetition.
401
425
  *
402
- * @tsplus pipeable fncts.control.Z repeatN
426
+ * @tsplus pipeable fncts.control.Pure repeatN
403
427
  */
404
428
  function repeatN_1(n) {
405
429
  return ma => {
406
- return flatMap_1(a => n <= 0 ? succeedNow_1(a, fileName_1 + ":454:52") : repeatN_1(n - 1)(ma))(ma);
430
+ return flatMap_1(a => n <= 0 ? succeedNow_1(a, fileName_1 + ":487:55") : repeatN_1(n - 1)(ma))(ma);
407
431
  };
408
432
  }
409
433
  /**
410
434
  * Repeats this computation until its value satisfies the specified predicate
411
435
  * (or until the first failure) passing the updated state to each successive repetition.
412
436
  *
413
- * @tsplus pipeable fncts.control.Z repeatUntil
437
+ * @tsplus pipeable fncts.control.Pure repeatUntil
414
438
  */
415
439
  function repeatUntil_1(p) {
416
440
  return ma => {
417
- return flatMap_1(a => p(a) ? succeedNow_1(a, fileName_1 + ":466:50") : repeatUntil_1(p)(ma))(ma);
441
+ return flatMap_1(a => p(a) ? succeedNow_1(a, fileName_1 + ":499:53") : repeatUntil_1(p)(ma))(ma);
418
442
  };
419
443
  }
420
444
  /**
421
- * @tsplus static fncts.control.ZOps succeed
445
+ * @tsplus static fncts.control.PureOps succeed
422
446
  */
423
- function succeed_1(effect, __tsplusTrace) {
424
- return new Succeed(effect);
447
+ export function succeed(effect, __tsplusTrace) {
448
+ const z = new PurePrimitive(1 /* PureTag.Succeed */);
449
+ z.i0 = effect;
450
+ return z;
425
451
  }
426
452
  /**
427
- * @tsplus static fncts.control.ZOps succeedNow
453
+ * @tsplus static fncts.control.PureOps succeedNow
428
454
  */
429
455
  function succeedNow_1(a, __tsplusTrace) {
430
- return new SucceedNow(a);
456
+ const z = new PurePrimitive(0 /* PureTag.SucceedNow */);
457
+ z.i0 = a;
458
+ return z;
431
459
  }
432
460
  /**
433
- * @tsplus pipeable fncts.control.Z tap
461
+ * @tsplus pipeable fncts.control.Pure tap
434
462
  */
435
463
  export function tap(f) {
436
464
  return ma => {
@@ -438,21 +466,23 @@ export function tap(f) {
438
466
  };
439
467
  }
440
468
  /**
441
- * @tsplus static fncts.control.ZOps tell
469
+ * @tsplus static fncts.control.PureOps tell
442
470
  */
443
471
  export function tell(w) {
444
472
  return tellAll_1(tsplus_module_7.single(w));
445
473
  }
446
474
  /**
447
- * @tsplus static fncts.control.ZOps tellAll
475
+ * @tsplus static fncts.control.PureOps tellAll
448
476
  */
449
477
  function tellAll_1(ws) {
450
- return new Tell(ws);
478
+ const z = new PurePrimitive(9 /* PureTag.Tell */);
479
+ z.i0 = ws;
480
+ return z;
451
481
  }
452
482
  /**
453
483
  * Like `map`, but also allows the state to be modified.
454
484
  *
455
- * @tsplus pipeable fncts.control.Z transform
485
+ * @tsplus pipeable fncts.control.Pure transform
456
486
  */
457
487
  function transform_1(f) {
458
488
  return ma => {
@@ -460,19 +490,19 @@ function transform_1(f) {
460
490
  };
461
491
  }
462
492
  /**
463
- * @tsplus static fncts.control.ZOps unit
493
+ * @tsplus static fncts.control.PureOps unit
464
494
  */
465
- export const unit = /*#__PURE__*/succeedNow_1(undefined, fileName_1 + ":527:79");
495
+ export const unit = /*#__PURE__*/succeedNow_1(undefined, fileName_1 + ":566:85");
466
496
  /**
467
497
  * Constructs a computation from the specified update function.
468
498
  *
469
- * @tsplus static fncts.control.ZOps update
499
+ * @tsplus static fncts.control.PureOps update
470
500
  */
471
501
  function update_1(f) {
472
502
  return modify_1(s => [undefined, f(s)]);
473
503
  }
474
504
  /**
475
- * @tsplus pipeable fncts.control.Z write
505
+ * @tsplus pipeable fncts.control.Pure write
476
506
  */
477
507
  export function write(w) {
478
508
  return ma => {
@@ -480,7 +510,7 @@ export function write(w) {
480
510
  };
481
511
  }
482
512
  /**
483
- * @tsplus pipeable fncts.control.Z writeAll
513
+ * @tsplus pipeable fncts.control.Pure writeAll
484
514
  */
485
515
  function writeAll_1(log) {
486
516
  return ma => {
@@ -488,7 +518,7 @@ function writeAll_1(log) {
488
518
  };
489
519
  }
490
520
  /**
491
- * @tsplus pipeable fncts.control.Z zip
521
+ * @tsplus pipeable fncts.control.Pure zip
492
522
  */
493
523
  export function zip(fb) {
494
524
  return fa => {
@@ -496,7 +526,7 @@ export function zip(fb) {
496
526
  };
497
527
  }
498
528
  /**
499
- * @tsplus pipeable fncts.control.Z zipFirst
529
+ * @tsplus pipeable fncts.control.Pure zipFirst
500
530
  */
501
531
  export function zipFirst(fb) {
502
532
  return fa => {
@@ -504,7 +534,7 @@ export function zipFirst(fb) {
504
534
  };
505
535
  }
506
536
  /**
507
- * @tsplus pipeable fncts.control.Z zipSecond
537
+ * @tsplus pipeable fncts.control.Pure zipSecond
508
538
  */
509
539
  export function zipSecond(fb) {
510
540
  return fa => {
@@ -512,7 +542,7 @@ export function zipSecond(fb) {
512
542
  };
513
543
  }
514
544
  /**
515
- * @tsplus pipeable fncts.control.Z zipWith
545
+ * @tsplus pipeable fncts.control.Pure zipWith
516
546
  */
517
547
  function zipWith_1(fb, f) {
518
548
  return fa => {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.mjs","names":["catchAll","catchAll_1","flatMap","flatMap_1","crossWith","crossWith_1","defer","defer_1","environmentWithPure","environmentWithPure_1","failNow","failNow_1","failCause","failCause_1","failCauseNow","failCauseNow_1","get","get_1","listen","listen_1","map","map_1","mapLog","mapLog_1","mapState","mapState_1","match","match_1","matchPure","matchPure_1","matchCausePure","matchCausePure_1","matchLogCausePure","matchLogCausePure_1","modify","modify_1","provideEnvironment","provideEnvironment_1","repeatN","repeatN_1","repeatUntil","repeatUntil_1","succeedNow","succeedNow_1","tellAll","tellAll_1","transform","transform_1","update","update_1","writeAll","writeAll_1","zipWith","zipWith_1","PurePrimitive","identity","tuple","absolve","fa","ea","tsplus_module_1","ap","fb","self","f","a","zipLeft","_","zipRight","b","bimap","g","pab","e","fileName_1","onFailure","catchJust","tsplus_module_2","getOrElse","ma","z","i0","i1","contramapEnvironment","r","contramapState","cross","__tsplusTrace","either","tsplus_module_3","left","right","environment","environmentWith","erase","wa","tsplus_module_4","empty","fail","tsplus_module_5","cause","flatten","mma","s","gets","getsPure","halt","defect","haltNow","ws","listens","mapError","onSuccess","failureOrCause","w1s","tsplus_module_6","concat","w2s","matchLogPure","i2","modifyEither","s2","orElse","orElseEither","that","put","undefined","n","p","succeed","effect","tap","tell","w","tsplus_module_7","single","unit","write","log","zip","tsplus_module_8","make","zipFirst","zipSecond"],"sources":["../../../_src/control/Pure/api.ts"],"sourcesContent":[null],"mappings":"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"}