@fncts/io 0.0.34 → 0.0.36

Sign up to get free protection for your applications and to get access to all the features.
Files changed (230) hide show
  1. package/Fiber/FiberRuntime.d.ts +7 -7
  2. package/Fiber/constructors.d.ts +5 -0
  3. package/IO/api/all.d.ts +41 -0
  4. package/IO/api/concurrency.d.ts +11 -0
  5. package/IO/api/interrupt.d.ts +1 -1
  6. package/IO/api/raceWith.d.ts +2 -1
  7. package/IO/api.d.ts +7 -2
  8. package/IO/definition.d.ts +103 -127
  9. package/IO.d.ts +1 -0
  10. package/Push/api.d.ts +86 -36
  11. package/Push/definition.d.ts +28 -13
  12. package/Push/internal.d.ts +7 -11
  13. package/RefSubject/Atomic.d.ts +8 -11
  14. package/RefSubject/Synchronized/definition.d.ts +4 -6
  15. package/RefSubject/api.d.ts +0 -1
  16. package/RefSubject/definition.d.ts +6 -8
  17. package/STM/definition.d.ts +19 -2
  18. package/Sink/api.d.ts +24 -24
  19. package/Subject/Atomic.d.ts +4 -6
  20. package/Subject/definition.d.ts +2 -2
  21. package/_cjs/Channel/api/runScoped.cjs +1 -1
  22. package/_cjs/Channel/api/runScoped.cjs.map +1 -1
  23. package/_cjs/Channel/api.cjs +2 -2
  24. package/_cjs/Channel/api.cjs.map +1 -1
  25. package/_cjs/Fiber/FiberRuntime.cjs +110 -98
  26. package/_cjs/Fiber/FiberRuntime.cjs.map +1 -1
  27. package/_cjs/Fiber/constructors.cjs +10 -2
  28. package/_cjs/Fiber/constructors.cjs.map +1 -1
  29. package/_cjs/Future/api.cjs +1 -1
  30. package/_cjs/Future/api.cjs.map +1 -1
  31. package/_cjs/IO/api/all.cjs +33 -0
  32. package/_cjs/IO/api/all.cjs.map +1 -0
  33. package/_cjs/IO/api/asyncIO.cjs +1 -1
  34. package/_cjs/IO/api/asyncIO.cjs.map +1 -1
  35. package/_cjs/IO/api/bracketExit.cjs +1 -1
  36. package/_cjs/IO/api/bracketExit.cjs.map +1 -1
  37. package/_cjs/IO/api/concurrency.cjs +25 -4
  38. package/_cjs/IO/api/concurrency.cjs.map +1 -1
  39. package/_cjs/IO/api/disconnect.cjs +1 -1
  40. package/_cjs/IO/api/disconnect.cjs.map +1 -1
  41. package/_cjs/IO/api/foreachConcurrent.cjs +1 -1
  42. package/_cjs/IO/api/foreachConcurrent.cjs.map +1 -1
  43. package/_cjs/IO/api/foreachExec.cjs +1 -1
  44. package/_cjs/IO/api/foreachExec.cjs.map +1 -1
  45. package/_cjs/IO/api/forkIn.cjs +1 -1
  46. package/_cjs/IO/api/forkIn.cjs.map +1 -1
  47. package/_cjs/IO/api/forkScoped.cjs +1 -1
  48. package/_cjs/IO/api/forkScoped.cjs.map +1 -1
  49. package/_cjs/IO/api/fulfill.cjs +1 -1
  50. package/_cjs/IO/api/fulfill.cjs.map +1 -1
  51. package/_cjs/IO/api/interrupt.cjs +18 -6
  52. package/_cjs/IO/api/interrupt.cjs.map +1 -1
  53. package/_cjs/IO/api/raceWith.cjs +4 -4
  54. package/_cjs/IO/api/raceWith.cjs.map +1 -1
  55. package/_cjs/IO/api/timeout.cjs +8 -5
  56. package/_cjs/IO/api/timeout.cjs.map +1 -1
  57. package/_cjs/IO/api/zipConcurrent.cjs +1 -1
  58. package/_cjs/IO/api/zipConcurrent.cjs.map +1 -1
  59. package/_cjs/IO/api.cjs +78 -20
  60. package/_cjs/IO/api.cjs.map +1 -1
  61. package/_cjs/IO/definition.cjs +14 -191
  62. package/_cjs/IO/definition.cjs.map +1 -1
  63. package/_cjs/IO.cjs +11 -0
  64. package/_cjs/IO.cjs.map +1 -1
  65. package/_cjs/Layer/MemoMap.cjs +1 -1
  66. package/_cjs/Layer/MemoMap.cjs.map +1 -1
  67. package/_cjs/Layer/api.cjs.map +1 -1
  68. package/_cjs/Push/api.cjs +238 -168
  69. package/_cjs/Push/api.cjs.map +1 -1
  70. package/_cjs/Push/definition.cjs +12 -13
  71. package/_cjs/Push/definition.cjs.map +1 -1
  72. package/_cjs/Push/internal.cjs +37 -29
  73. package/_cjs/Push/internal.cjs.map +1 -1
  74. package/_cjs/RefSubject/Atomic.cjs +15 -19
  75. package/_cjs/RefSubject/Atomic.cjs.map +1 -1
  76. package/_cjs/RefSubject/Synchronized/definition.cjs +9 -10
  77. package/_cjs/RefSubject/Synchronized/definition.cjs.map +1 -1
  78. package/_cjs/RefSubject/api.cjs +5 -6
  79. package/_cjs/RefSubject/api.cjs.map +1 -1
  80. package/_cjs/RefSubject/definition.cjs.map +1 -1
  81. package/_cjs/STM/api/atomically.cjs +1 -1
  82. package/_cjs/STM/api/atomically.cjs.map +1 -1
  83. package/_cjs/STM/api.cjs +2 -2
  84. package/_cjs/STM/api.cjs.map +1 -1
  85. package/_cjs/STM/definition.cjs +1 -1
  86. package/_cjs/STM/definition.cjs.map +1 -1
  87. package/_cjs/ScopedRef/api.cjs +2 -2
  88. package/_cjs/ScopedRef/api.cjs.map +1 -1
  89. package/_cjs/Semaphore.cjs +1 -1
  90. package/_cjs/Semaphore.cjs.map +1 -1
  91. package/_cjs/Sink/api.cjs +13 -13
  92. package/_cjs/Sink/api.cjs.map +1 -1
  93. package/_cjs/Subject/Atomic.cjs +4 -5
  94. package/_cjs/Subject/Atomic.cjs.map +1 -1
  95. package/_cjs/TReentrantLock/api.cjs +2 -2
  96. package/_cjs/TReentrantLock/api.cjs.map +1 -1
  97. package/_cjs/TSemaphore/api.cjs +1 -1
  98. package/_cjs/TSemaphore/api.cjs.map +1 -1
  99. package/_cjs/collection/immutable/Conc/dropUntilIO.cjs +12 -17
  100. package/_cjs/collection/immutable/Conc/dropUntilIO.cjs.map +1 -1
  101. package/_cjs/collection/immutable/Conc/dropWhileIO.cjs +12 -17
  102. package/_cjs/collection/immutable/Conc/dropWhileIO.cjs.map +1 -1
  103. package/_cjs/collection/immutable/Conc/filterIO.cjs +2 -12
  104. package/_cjs/collection/immutable/Conc/filterIO.cjs.map +1 -1
  105. package/_cjs/collection/immutable/Conc/mapIO.cjs +3 -9
  106. package/_cjs/collection/immutable/Conc/mapIO.cjs.map +1 -1
  107. package/_cjs/collection/immutable/Conc/takeWhileIO.cjs +11 -27
  108. package/_cjs/collection/immutable/Conc/takeWhileIO.cjs.map +1 -1
  109. package/_mjs/Channel/api/runScoped.mjs +1 -1
  110. package/_mjs/Channel/api/runScoped.mjs.map +1 -1
  111. package/_mjs/Channel/api.mjs +2 -2
  112. package/_mjs/Channel/api.mjs.map +1 -1
  113. package/_mjs/Fiber/FiberRuntime.mjs +111 -100
  114. package/_mjs/Fiber/FiberRuntime.mjs.map +1 -1
  115. package/_mjs/Fiber/constructors.mjs +7 -1
  116. package/_mjs/Fiber/constructors.mjs.map +1 -1
  117. package/_mjs/Future/api.mjs +1 -1
  118. package/_mjs/Future/api.mjs.map +1 -1
  119. package/_mjs/IO/api/all.mjs +24 -0
  120. package/_mjs/IO/api/all.mjs.map +1 -0
  121. package/_mjs/IO/api/asyncIO.mjs +1 -1
  122. package/_mjs/IO/api/asyncIO.mjs.map +1 -1
  123. package/_mjs/IO/api/bracketExit.mjs +1 -1
  124. package/_mjs/IO/api/bracketExit.mjs.map +1 -1
  125. package/_mjs/IO/api/concurrency.mjs +19 -2
  126. package/_mjs/IO/api/concurrency.mjs.map +1 -1
  127. package/_mjs/IO/api/disconnect.mjs +1 -1
  128. package/_mjs/IO/api/disconnect.mjs.map +1 -1
  129. package/_mjs/IO/api/foreachConcurrent.mjs +1 -1
  130. package/_mjs/IO/api/foreachConcurrent.mjs.map +1 -1
  131. package/_mjs/IO/api/foreachExec.mjs +1 -1
  132. package/_mjs/IO/api/foreachExec.mjs.map +1 -1
  133. package/_mjs/IO/api/forkIn.mjs +1 -1
  134. package/_mjs/IO/api/forkIn.mjs.map +1 -1
  135. package/_mjs/IO/api/forkScoped.mjs +1 -1
  136. package/_mjs/IO/api/forkScoped.mjs.map +1 -1
  137. package/_mjs/IO/api/fulfill.mjs +1 -1
  138. package/_mjs/IO/api/fulfill.mjs.map +1 -1
  139. package/_mjs/IO/api/interrupt.mjs +19 -7
  140. package/_mjs/IO/api/interrupt.mjs.map +1 -1
  141. package/_mjs/IO/api/raceWith.mjs +4 -4
  142. package/_mjs/IO/api/raceWith.mjs.map +1 -1
  143. package/_mjs/IO/api/timeout.mjs +8 -5
  144. package/_mjs/IO/api/timeout.mjs.map +1 -1
  145. package/_mjs/IO/api/zipConcurrent.mjs +1 -1
  146. package/_mjs/IO/api/zipConcurrent.mjs.map +1 -1
  147. package/_mjs/IO/api.mjs +78 -23
  148. package/_mjs/IO/api.mjs.map +1 -1
  149. package/_mjs/IO/definition.mjs +12 -181
  150. package/_mjs/IO/definition.mjs.map +1 -1
  151. package/_mjs/IO.mjs +1 -0
  152. package/_mjs/IO.mjs.map +1 -1
  153. package/_mjs/Layer/MemoMap.mjs +1 -1
  154. package/_mjs/Layer/MemoMap.mjs.map +1 -1
  155. package/_mjs/Layer/api.mjs.map +1 -1
  156. package/_mjs/Push/api.mjs +223 -166
  157. package/_mjs/Push/api.mjs.map +1 -1
  158. package/_mjs/Push/definition.mjs +9 -10
  159. package/_mjs/Push/definition.mjs.map +1 -1
  160. package/_mjs/Push/internal.mjs +33 -22
  161. package/_mjs/Push/internal.mjs.map +1 -1
  162. package/_mjs/RefSubject/Atomic.mjs +15 -19
  163. package/_mjs/RefSubject/Atomic.mjs.map +1 -1
  164. package/_mjs/RefSubject/Synchronized/definition.mjs +9 -10
  165. package/_mjs/RefSubject/Synchronized/definition.mjs.map +1 -1
  166. package/_mjs/RefSubject/api.mjs +6 -7
  167. package/_mjs/RefSubject/api.mjs.map +1 -1
  168. package/_mjs/RefSubject/definition.mjs.map +1 -1
  169. package/_mjs/STM/api/atomically.mjs +1 -1
  170. package/_mjs/STM/api/atomically.mjs.map +1 -1
  171. package/_mjs/STM/api.mjs +2 -2
  172. package/_mjs/STM/api.mjs.map +1 -1
  173. package/_mjs/STM/definition.mjs +1 -1
  174. package/_mjs/STM/definition.mjs.map +1 -1
  175. package/_mjs/ScopedRef/api.mjs +2 -2
  176. package/_mjs/ScopedRef/api.mjs.map +1 -1
  177. package/_mjs/Semaphore.mjs +1 -1
  178. package/_mjs/Semaphore.mjs.map +1 -1
  179. package/_mjs/Sink/api.mjs +10 -10
  180. package/_mjs/Sink/api.mjs.map +1 -1
  181. package/_mjs/Subject/Atomic.mjs +4 -5
  182. package/_mjs/Subject/Atomic.mjs.map +1 -1
  183. package/_mjs/TReentrantLock/api.mjs +2 -2
  184. package/_mjs/TReentrantLock/api.mjs.map +1 -1
  185. package/_mjs/TSemaphore/api.mjs +1 -1
  186. package/_mjs/TSemaphore/api.mjs.map +1 -1
  187. package/_mjs/collection/immutable/Conc/dropUntilIO.mjs +12 -17
  188. package/_mjs/collection/immutable/Conc/dropUntilIO.mjs.map +1 -1
  189. package/_mjs/collection/immutable/Conc/dropWhileIO.mjs +12 -17
  190. package/_mjs/collection/immutable/Conc/dropWhileIO.mjs.map +1 -1
  191. package/_mjs/collection/immutable/Conc/filterIO.mjs +2 -12
  192. package/_mjs/collection/immutable/Conc/filterIO.mjs.map +1 -1
  193. package/_mjs/collection/immutable/Conc/mapIO.mjs +3 -9
  194. package/_mjs/collection/immutable/Conc/mapIO.mjs.map +1 -1
  195. package/_mjs/collection/immutable/Conc/takeWhileIO.mjs +11 -27
  196. package/_mjs/collection/immutable/Conc/takeWhileIO.mjs.map +1 -1
  197. package/_src/Channel/api.ts +3 -3
  198. package/_src/Fiber/FiberRuntime.ts +76 -75
  199. package/_src/Fiber/constructors.ts +5 -0
  200. package/_src/IO/api/all.ts +64 -0
  201. package/_src/IO/api/concurrency.ts +33 -0
  202. package/_src/IO/api/foreachExec.ts +2 -2
  203. package/_src/IO/api/interrupt.ts +20 -7
  204. package/_src/IO/api/raceWith.ts +4 -2
  205. package/_src/IO/api/timeout.ts +21 -1
  206. package/_src/IO/api.ts +79 -27
  207. package/_src/IO/definition.ts +155 -200
  208. package/_src/IO.ts +1 -0
  209. package/_src/Layer/api.ts +0 -1
  210. package/_src/Push/api.ts +305 -304
  211. package/_src/Push/definition.ts +19 -17
  212. package/_src/Push/internal.ts +63 -31
  213. package/_src/RefSubject/Atomic.ts +16 -22
  214. package/_src/RefSubject/Synchronized/definition.ts +6 -9
  215. package/_src/RefSubject/api.ts +9 -12
  216. package/_src/RefSubject/definition.ts +6 -8
  217. package/_src/STM/api.ts +0 -5
  218. package/_src/STM/definition.ts +8 -2
  219. package/_src/Sink/api.ts +9 -9
  220. package/_src/Subject/Atomic.ts +6 -8
  221. package/_src/Subject/definition.ts +2 -2
  222. package/_src/collection/immutable/Conc/dropUntilIO.ts +18 -15
  223. package/_src/collection/immutable/Conc/dropWhileIO.ts +18 -17
  224. package/_src/collection/immutable/Conc/filterIO.ts +1 -11
  225. package/_src/collection/immutable/Conc/mapIO.ts +2 -9
  226. package/_src/collection/immutable/Conc/takeWhileIO.ts +19 -28
  227. package/collection/immutable/Conc/filterIO.d.ts +1 -1
  228. package/collection/immutable/Conc/mapIO.d.ts +1 -1
  229. package/collection/immutable/Conc/takeWhileIO.d.ts +1 -1
  230. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"api.mjs","names":["acquireN","acquireN_1","releaseN","releaseN_1","withPermits","withPermits_1","assert","Effect","RetryException","acquire","self","__tsplusTrace","n","journal","value","tsplus_module_2","unsafeGet","tsplus_module_1","TSemaphore","reverseGet","unsafeSet","available","get","release","current","io","tsplus_module_4","uninterruptibleMask","restore","tsplus_module_5","zipRight","ensuring","tsplus_module_3","atomically","withPermit"],"sources":["../../_src/TSemaphore/api.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"api.mjs","names":["acquireN","acquireN_1","releaseN","releaseN_1","withPermits","withPermits_1","assert","Effect","RetryException","acquire","self","__tsplusTrace","n","journal","value","tsplus_module_2","unsafeGet","tsplus_module_1","TSemaphore","reverseGet","unsafeSet","available","get","release","current","io","tsplus_module_4","uninterruptibleMask","restore","tsplus_module_5","zipRight","ensuring","tsplus_module_3","atomically","withPermit"],"sources":["../../_src/TSemaphore/api.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -1,25 +1,20 @@
1
- import * as tsplus_module_1 from "@fncts/base/collection/immutable/Conc";
2
- import * as tsplus_module_2 from "@fncts/io/IO/api";
1
+ import * as tsplus_module_1 from "@fncts/io/IO/api";
2
+ import * as tsplus_module_2 from "@fncts/base/collection/immutable/Conc/api";
3
+ import * as tsplus_module_3 from "@fncts/base/collection/immutable/Conc/api/empty";
3
4
  /**
4
5
  * @tsplus pipeable fncts.Conc dropUntilIO
5
6
  */
6
7
  export function dropUntilIO(p, __tsplusTrace) {
7
8
  return self => {
8
- return tsplus_module_2.defer(() => {
9
- const builder = new tsplus_module_1.ConcBuilder();
10
- let dropping = tsplus_module_2.succeedNow(false, __tsplusTrace);
11
- for (const elem of self) {
12
- dropping = tsplus_module_2.flatMap(b => {
13
- if (b) {
14
- builder.append(elem);
15
- return tsplus_module_2.succeedNow(true, __tsplusTrace);
16
- } else {
17
- return p(elem);
18
- }
19
- }, __tsplusTrace)(dropping);
20
- }
21
- return tsplus_module_2.as(() => builder.result(), __tsplusTrace)(dropping);
22
- }, __tsplusTrace);
9
+ return tsplus_module_1.defer(() => dropUntilIOLoop(self, self[Symbol.iterator](), p, 0, __tsplusTrace), __tsplusTrace);
23
10
  };
24
11
  }
12
+ function dropUntilIOLoop(self, iterator, p, index, __tsplusTrace) {
13
+ let result;
14
+ if (!(result = iterator.next()).done) {
15
+ return tsplus_module_1.flatMap(b => b ? tsplus_module_1.succeed(() => tsplus_module_2.drop(index + 1)(self), __tsplusTrace) : dropUntilIOLoop(self, iterator, p, index + 1, __tsplusTrace), __tsplusTrace)(p(result.value));
16
+ } else {
17
+ return tsplus_module_1.succeed(() => tsplus_module_3.empty(), __tsplusTrace);
18
+ }
19
+ }
25
20
  //# sourceMappingURL=dropUntilIO.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropUntilIO.mjs","names":["dropUntilIO","p","__tsplusTrace","self","tsplus_module_2","defer","builder","tsplus_module_1","ConcBuilder","dropping","succeedNow","elem","flatMap","b","append","as","result"],"sources":["../../../../_src/collection/immutable/Conc/dropUntilIO.ts"],"sourcesContent":[null],"mappings":";;AAAA;;;AAGA,OAAM,SAAUA,WAAWA,CAAUC,CAA8B,EAAEC,aAAsB;EACzF,OAAQC,IAAa,IAAuB;IAC1C,OAAOC,eAAA,CAAAC,KAAA,CAAS,MAAK;MACnB,MAAMC,OAAO,GAAqB,IAAAC,eAAA,CAAIC,WAAW,EAAK;MACtD,IAAIC,QAAQ,GAAsBL,eAAA,CAAAM,UAAA,CAAc,KAAK,EAJUR,aAAA,CAIT;MACtD,KAAK,MAAMS,IAAI,IAAIR,IAAI,EAAE;QACvBM,QAAQ,GAAGL,eAAA,CAAAQ,OAAA,CAAkBC,CAAC,IAAI;UAChC,IAAIA,CAAC,EAAE;YACLP,OAAO,CAACQ,MAAM,CAACH,IAAI,CAAC;YACpB,OAAOP,eAAA,CAAAM,UAAA,CAAc,IAAI,EATgCR,aAAA,CAS/B;WAC3B,MAAM;YACL,OAAOD,CAAC,CAACU,IAAI,CAAC;;QAElB,CAAC,EAb4DT,aAAA,EAMlDO,QAAQ,CAOjB;;MAEJ,OAAOL,eAAA,CAAAW,EAAA,OAAYT,OAAO,CAACU,MAAM,EAAE,EAf4Bd,aAAA,EAexDO,QAAQ,CAAqB;IACtC,CAAC,EAhBgEP,aAAA,CAgB/D;EACJ,CAAC;AACH"}
1
+ {"version":3,"file":"dropUntilIO.mjs","names":["dropUntilIO","p","__tsplusTrace","self","tsplus_module_1","defer","dropUntilIOLoop","Symbol","iterator","index","result","next","done","flatMap","b","succeed","tsplus_module_2","drop","value","tsplus_module_3","empty"],"sources":["../../../../_src/collection/immutable/Conc/dropUntilIO.ts"],"sourcesContent":[null],"mappings":";;;AAAA;;;AAGA,OAAM,SAAUA,WAAWA,CAAUC,CAA8B,EAAEC,aAAsB;EACzF,OAAQC,IAAa,IAAuB;IAC1C,OAAOC,eAAA,CAAAC,KAAA,OAASC,eAAe,CAACH,IAAI,EAAEA,IAAI,CAACI,MAAM,CAACC,QAAQ,CAAC,EAAE,EAAEP,CAAC,EAAE,CAAC,EAFFC,aAAA,CAEG,EAFHA,aAAA,CAEI;EACvE,CAAC;AACH;AAEA,SAASI,eAAeA,CACtBH,IAAa,EACbK,QAAqB,EACrBP,CAA8B,EAC9BQ,KAAa,EACbP,aAAsB;EAEtB,IAAIQ,MAAyB;EAC7B,IAAI,CAAC,CAACA,MAAM,GAAGF,QAAQ,CAACG,IAAI,EAAE,EAAEC,IAAI,EAAE;IACpC,OAAOR,eAAA,CAAAS,OAAA,CAAyBC,CAAC,IAC/BA,CAAC,GAAGV,eAAA,CAAAW,OAAA,OAAWC,eAAA,CAAAC,IAAA,CAAUR,KAAK,GAAG,CAAC,EAAnBN,IAAI,CAAgB,EALvCD,aAAA,CAKwC,GAAGI,eAAe,CAACH,IAAI,EAAEK,QAAQ,EAAEP,CAAC,EAAEQ,KAAK,GAAG,CAAC,EALvFP,aAAA,CAKwF,EALxFA,aAAA,EAISD,CAAC,CAACS,MAAM,CAACQ,KAAK,CAAC,CAErB;GACF,MAAM;IACL,OAAOd,eAAA,CAAAW,OAAA,OAAWI,eAAA,CAAAC,KAAA,EAAY,EARhClB,aAAA,CAQiC;;AAEnC"}
@@ -1,25 +1,20 @@
1
- import * as tsplus_module_1 from "@fncts/base/collection/immutable/Conc";
2
- import * as tsplus_module_2 from "@fncts/io/IO/api";
1
+ import * as tsplus_module_1 from "@fncts/io/IO/api";
2
+ import * as tsplus_module_2 from "@fncts/base/collection/immutable/Conc/api";
3
+ import * as tsplus_module_3 from "@fncts/base/collection/immutable/Conc/api/empty";
3
4
  /**
4
5
  * @tsplus pipeable fncts.Conc dropWhileIO
5
6
  */
6
7
  export function dropWhileIO(p, __tsplusTrace) {
7
8
  return self => {
8
- return tsplus_module_2.defer(() => {
9
- const builder = new tsplus_module_1.ConcBuilder();
10
- let dropping = tsplus_module_2.succeedNow(true, __tsplusTrace);
11
- for (const elem of self) {
12
- dropping = tsplus_module_2.flatMap(d => tsplus_module_2.map(b => {
13
- if (b) {
14
- return true;
15
- } else {
16
- builder.append(elem);
17
- return false;
18
- }
19
- }, __tsplusTrace)(d ? p(elem) : tsplus_module_2.succeedNow(false, __tsplusTrace)), __tsplusTrace)(dropping);
20
- }
21
- return tsplus_module_2.as(() => builder.result(), __tsplusTrace)(dropping);
22
- }, __tsplusTrace);
9
+ return tsplus_module_1.defer(() => dropWhileIOLoop(self, self[Symbol.iterator](), p, 0, __tsplusTrace), __tsplusTrace);
23
10
  };
24
11
  }
12
+ function dropWhileIOLoop(self, iterator, p, index, __tsplusTrace) {
13
+ let result;
14
+ if (!(result = iterator.next()).done) {
15
+ return tsplus_module_1.flatMap(b => b ? dropWhileIOLoop(self, iterator, p, index + 1, __tsplusTrace) : tsplus_module_1.succeed(() => tsplus_module_2.drop(index)(self), __tsplusTrace), __tsplusTrace)(p(result.value));
16
+ } else {
17
+ return tsplus_module_1.succeed(() => tsplus_module_3.empty(), __tsplusTrace);
18
+ }
19
+ }
25
20
  //# sourceMappingURL=dropWhileIO.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropWhileIO.mjs","names":["dropWhileIO","p","__tsplusTrace","self","tsplus_module_2","defer","builder","tsplus_module_1","ConcBuilder","dropping","succeedNow","elem","flatMap","d","map","b","append","as","result"],"sources":["../../../../_src/collection/immutable/Conc/dropWhileIO.ts"],"sourcesContent":[null],"mappings":";;AAAA;;;AAGA,OAAM,SAAUA,WAAWA,CAAUC,CAA8B,EAAEC,aAAsB;EACzF,OAAQC,IAAa,IAAuB;IAC1C,OAAOC,eAAA,CAAAC,KAAA,CAAS,MAAK;MACnB,MAAMC,OAAO,GAAqB,IAAAC,eAAA,CAAIC,WAAW,EAAK;MACtD,IAAIC,QAAQ,GAAsBL,eAAA,CAAAM,UAAA,CAAc,IAAI,EAJWR,aAAA,CAIV;MACrD,KAAK,MAAMS,IAAI,IAAIR,IAAI,EAAE;QACvBM,QAAQ,GAAGL,eAAA,CAAAQ,OAAA,CAAkBC,CAAC,IAC5BT,eAAA,CAAAU,GAAA,CAA0CC,CAAC,IAAI;UAC7C,IAAIA,CAAC,EAAE;YACL,OAAO,IAAI;WACZ,MAAM;YACLT,OAAO,CAACU,MAAM,CAACL,IAAI,CAAC;YACpB,OAAO,KAAK;;QAEhB,CAAC,EAd0DT,aAAA,EAO1DW,CAAC,GAAGZ,CAAC,CAACU,IAAI,CAAC,GAAGP,eAAA,CAAAM,UAAA,CAAc,KAAK,EAPyBR,aAAA,CAOxB,CAOjC,EAdyDA,aAAA,EAMlDO,QAAQ,CASlB;;MAEH,OAAOL,eAAA,CAAAa,EAAA,OAAYX,OAAO,CAACY,MAAM,EAAE,EAjB4BhB,aAAA,EAiBxDO,QAAQ,CAAqB;IACtC,CAAC,EAlBgEP,aAAA,CAkB/D;EACJ,CAAC;AACH"}
1
+ {"version":3,"file":"dropWhileIO.mjs","names":["dropWhileIO","p","__tsplusTrace","self","tsplus_module_1","defer","dropWhileIOLoop","Symbol","iterator","index","result","next","done","flatMap","b","succeed","tsplus_module_2","drop","value","tsplus_module_3","empty"],"sources":["../../../../_src/collection/immutable/Conc/dropWhileIO.ts"],"sourcesContent":[null],"mappings":";;;AAAA;;;AAGA,OAAM,SAAUA,WAAWA,CAAUC,CAA8B,EAAEC,aAAsB;EACzF,OAAQC,IAAa,IAAuB;IAC1C,OAAOC,eAAA,CAAAC,KAAA,OAASC,eAAe,CAACH,IAAI,EAAEA,IAAI,CAACI,MAAM,CAACC,QAAQ,CAAC,EAAE,EAAEP,CAAC,EAAE,CAAC,EAFFC,aAAA,CAEG,EAFHA,aAAA,CAEI;EACvE,CAAC;AACH;AAEA,SAASI,eAAeA,CACtBH,IAAa,EACbK,QAAqB,EACrBP,CAA8B,EAC9BQ,KAAa,EACbP,aAAsB;EAEtB,IAAIQ,MAAyB;EAC7B,IAAI,CAAC,CAACA,MAAM,GAAGF,QAAQ,CAACG,IAAI,EAAE,EAAEC,IAAI,EAAE;IACpC,OAAOR,eAAA,CAAAS,OAAA,CAAyBC,CAAC,IAC/BA,CAAC,GAAGR,eAAe,CAACH,IAAI,EAAEK,QAAQ,EAAEP,CAAC,EAAEQ,KAAK,GAAG,CAAC,EALpDP,aAAA,CAKqD,GAAGE,eAAA,CAAAW,OAAA,OAAWC,eAAA,CAAAC,IAAA,CAAUR,KAAK,EAAfN,IAAI,CAAY,EALnFD,aAAA,CAKoF,EALpFA,aAAA,EAISD,CAAC,CAACS,MAAM,CAACQ,KAAK,CAAC,CAErB;GACF,MAAM;IACL,OAAOd,eAAA,CAAAW,OAAA,OAAWI,eAAA,CAAAC,KAAA,EAAY,EARhClB,aAAA,CAQiC;;AAEnC"}
@@ -1,20 +1,10 @@
1
- import * as tsplus_module_1 from "@fncts/base/collection/immutable/Conc";
2
- import * as tsplus_module_2 from "@fncts/io/IO/api";
1
+ import * as tsplus_module_1 from "@fncts/io/IO/api";
3
2
  /**
4
3
  * @tsplus pipeable fncts.Conc filterIO
5
4
  */
6
5
  export function filterIO(p, __tsplusTrace) {
7
6
  return self => {
8
- return tsplus_module_2.defer(() => {
9
- const builder = new tsplus_module_1.ConcBuilder();
10
- let dest = tsplus_module_2.succeedNow(builder, __tsplusTrace);
11
- for (const a of self) {
12
- dest = tsplus_module_2.zipWith(p(a), (builder, res) => {
13
- if (res) return builder.append(a);else return builder;
14
- }, __tsplusTrace)(dest);
15
- }
16
- return tsplus_module_2.map(builder => builder.result(), __tsplusTrace)(dest);
17
- }, __tsplusTrace);
7
+ return tsplus_module_1.filter(self, p, __tsplusTrace);
18
8
  };
19
9
  }
20
10
  //# sourceMappingURL=filterIO.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"filterIO.mjs","names":["filterIO","p","__tsplusTrace","self","tsplus_module_2","defer","builder","tsplus_module_1","ConcBuilder","dest","succeedNow","a","zipWith","res","append","map","result"],"sources":["../../../../_src/collection/immutable/Conc/filterIO.ts"],"sourcesContent":[null],"mappings":";;AAAA;;;AAGA,OAAM,SAAUA,QAAQA,CAAUC,CAA8B,EAAEC,aAAsB;EACtF,OAAQC,IAAa,IAAuB;IAC1C,OAAOC,eAAA,CAAAC,KAAA,CAAS,MAAK;MACnB,MAAMC,OAAO,GAAG,IAAAC,eAAA,CAAIC,WAAW,EAAK;MACpC,IAAIC,IAAI,GAA6BL,eAAA,CAAAM,UAAA,CAAcJ,OAAO,EAJEJ,aAAA,CAID;MAC3D,KAAK,MAAMS,CAAC,IAAIR,IAAI,EAAE;QACpBM,IAAI,GAAGL,eAAA,CAAAQ,OAAA,CAAaX,CAAC,CAACU,CAAC,CAAC,EAAE,CAACL,OAAO,EAAEO,GAAG,KAAI;UACzC,IAAIA,GAAG,EAAE,OAAOP,OAAO,CAACQ,MAAM,CAACH,CAAC,CAAC,CAAC,KAC7B,OAAOL,OAAO;QACrB,CAAC,EATyDJ,aAAA,EAMnDO,IAAI,CAGT;;MAEJ,OAAOL,eAAA,CAAAW,GAAA,CAAUT,OAAO,IAAKA,OAAO,CAACU,MAAM,EAAE,EAXed,aAAA,EAWrDO,IAAI,CAAmC;IAChD,CAAC,EAZ6DP,aAAA,CAY5D;EACJ,CAAC;AACH"}
1
+ {"version":3,"file":"filterIO.mjs","names":["filterIO","p","__tsplusTrace","self","tsplus_module_1","filter"],"sources":["../../../../_src/collection/immutable/Conc/filterIO.ts"],"sourcesContent":[null],"mappings":";AAAA;;;AAGA,OAAM,SAAUA,QAAQA,CAAUC,CAA8B,EAAEC,aAAsB;EACtF,OAAQC,IAAa,IAAuB;IAC1C,OAAOC,eAAA,CAAAC,MAAA,CAAUF,IAAI,EAAEF,CAAC,EAFsCC,aAAA,CAErC;EAC3B,CAAC;AACH"}
@@ -1,16 +1,10 @@
1
- import * as tsplus_module_1 from "@fncts/base/collection/immutable/Conc/api";
2
- import * as tsplus_module_2 from "@fncts/io/IO/api";
1
+ import * as tsplus_module_1 from "@fncts/io/IO/api";
3
2
  /**
4
3
  * @tsplus pipeable fncts.Conc mapIO
5
4
  */
6
5
  export function mapIO(f, __tsplusTrace) {
7
- return as => {
8
- return tsplus_module_2.defer(() => {
9
- const out = tsplus_module_1.builder();
10
- return tsplus_module_2.as(() => out.result(), __tsplusTrace)(tsplus_module_2.foreachDiscard(as, a => tsplus_module_2.map(b => {
11
- out.append(b);
12
- }, __tsplusTrace)(f(a)), __tsplusTrace));
13
- }, __tsplusTrace);
6
+ return self => {
7
+ return tsplus_module_1.foreach(self, f, __tsplusTrace);
14
8
  };
15
9
  }
16
10
  //# sourceMappingURL=mapIO.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"mapIO.mjs","names":["mapIO","f","__tsplusTrace","as","tsplus_module_2","defer","out","tsplus_module_1","builder","result","foreachDiscard","a","map","b","append"],"sources":["../../../../_src/collection/immutable/Conc/mapIO.ts"],"sourcesContent":[null],"mappings":";;AAAA;;;AAGA,OAAM,SAAUA,KAAKA,CAAaC,CAAwB,EAAEC,aAAsB;EAChF,OAAQC,EAAW,IAAuB;IACxC,OAAOC,eAAA,CAAAC,KAAA,CAAS,MAAK;MACnB,MAAMC,GAAG,GAAGC,eAAA,CAAAC,OAAA,EAAiB;MAC7B,OAAOJ,eAAA,CAAAD,EAAA,OAIFG,GAAG,CAACG,MAAM,EAAE,EARqCP,aAAA,EAI/CE,eAAA,CAAAM,cAAA,CAAkBP,EAAE,EAAGQ,CAAC,IAC7BP,eAAA,CAAAQ,GAAA,CAAUC,CAAC,IAAI;QACbP,GAAG,CAACQ,MAAM,CAACD,CAAC,CAAC;MACf,CAAC,EAPmDX,aAAA,EAKpDD,CAAC,CAACU,CAAC,CAAC,CAEF,EAPkDT,aAAA,CAQrD,CAAiB;IACpB,CAAC,EATuDA,aAAA,CAStD;EACJ,CAAC;AACH"}
1
+ {"version":3,"file":"mapIO.mjs","names":["mapIO","f","__tsplusTrace","self","tsplus_module_1","foreach"],"sources":["../../../../_src/collection/immutable/Conc/mapIO.ts"],"sourcesContent":[null],"mappings":";AAAA;;;AAGA,OAAM,SAAUA,KAAKA,CAAaC,CAAwB,EAAEC,aAAsB;EAChF,OAAQC,IAAa,IAAuB;IAC1C,OAAOC,eAAA,CAAAC,OAAA,CAAWF,IAAI,EAAEF,CAAC,EAF+BC,aAAA,CAE9B;EAC5B,CAAC;AACH"}
@@ -1,36 +1,20 @@
1
1
  import * as tsplus_module_1 from "@fncts/io/IO/api";
2
2
  import * as tsplus_module_2 from "@fncts/base/collection/immutable/Conc/api";
3
- import { concrete } from "@fncts/base/collection/immutable/Conc";
3
+ import * as tsplus_module_3 from "@fncts/base/collection/immutable/Conc/api/empty";
4
4
  /**
5
5
  * @tsplus pipeable fncts.Conc takeWhileIO
6
6
  */
7
7
  export function takeWhileIO(p, __tsplusTrace) {
8
- return as => {
9
- return tsplus_module_1.defer(() => {
10
- void 0;
11
- let taking = tsplus_module_1.succeedNow(true, __tsplusTrace);
12
- const out = tsplus_module_2.builder();
13
- const iterator = as.arrayIterator();
14
- let result;
15
- while (!(result = iterator.next()).done) {
16
- const array = result.value;
17
- for (let i = 0; i < array.length; i++) {
18
- const j = i;
19
- taking = tsplus_module_1.flatMap(b => {
20
- const a = array[j];
21
- return tsplus_module_1.map(b1 => {
22
- if (b1) {
23
- out.append(a);
24
- return true;
25
- } else {
26
- return false;
27
- }
28
- }, __tsplusTrace)(b ? p(a) : tsplus_module_1.succeedNow(false, __tsplusTrace));
29
- }, __tsplusTrace)(taking);
30
- }
31
- }
32
- return tsplus_module_1.as(() => out.result(), __tsplusTrace)(taking);
33
- }, __tsplusTrace);
8
+ return self => {
9
+ return tsplus_module_1.defer(() => takeWhileIOLoop(self, self[Symbol.iterator](), p, 0, __tsplusTrace), __tsplusTrace);
34
10
  };
35
11
  }
12
+ function takeWhileIOLoop(self, iterator, p, index, __tsplusTrace) {
13
+ let result;
14
+ if (!(result = iterator.next()).done) {
15
+ return tsplus_module_1.flatMap(b => b ? takeWhileIOLoop(self, iterator, p, index + 1, __tsplusTrace) : tsplus_module_1.succeed(() => tsplus_module_2.take(index)(self), __tsplusTrace), __tsplusTrace)(p(result.value));
16
+ } else {
17
+ return tsplus_module_1.succeed(() => tsplus_module_3.empty(), __tsplusTrace);
18
+ }
19
+ }
36
20
  //# sourceMappingURL=takeWhileIO.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"takeWhileIO.mjs","names":["concrete","takeWhileIO","p","__tsplusTrace","as","tsplus_module_1","defer","taking","succeedNow","out","tsplus_module_2","builder","iterator","arrayIterator","result","next","done","array","value","i","length","j","flatMap","b","a","map","b1","append"],"sources":["../../../../_src/collection/immutable/Conc/takeWhileIO.ts"],"sourcesContent":[null],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,uCAAuC;AAEhE;;;AAGA,OAAM,SAAUC,WAAWA,CAAUC,CAA8B,EAAEC,aAAsB;EACzF,OAAQC,EAAW,IAAuB;IACxC,OAAOC,eAAA,CAAAC,KAAA,CAAS,MAAK;MACnB;MACA,IAAIC,MAAM,GAAsBF,eAAA,CAAAG,UAAA,CAAc,IAAI,EAJaL,aAAA,CAIZ;MACnD,MAAMM,GAAG,GAAuBC,eAAA,CAAAC,OAAA,EAAiB;MACjD,MAAMC,QAAQ,GAAkBR,EAAE,CAACS,aAAa,EAAE;MAClD,IAAIC,MAAoC;MACxC,OAAO,CAAC,CAACA,MAAM,GAAGF,QAAQ,CAACG,IAAI,EAAE,EAAEC,IAAI,EAAE;QACvC,MAAMC,KAAK,GAAGH,MAAM,CAACI,KAAK;QAC1B,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGF,KAAK,CAACG,MAAM,EAAED,CAAC,EAAE,EAAE;UACrC,MAAME,CAAC,GAAGF,CAAC;UACXZ,MAAM,GAAIF,eAAA,CAAAiB,OAAA,CAAgBC,CAAC,IAAI;YAC7B,MAAMC,CAAC,GAAGP,KAAK,CAACI,CAAC,CAAE;YACnB,OAAOhB,eAAA,CAAAoB,GAAA,CAAuCC,EAAE,IAAI;cAClD,IAAIA,EAAE,EAAE;gBACNjB,GAAG,CAACkB,MAAM,CAACH,CAAC,CAAC;gBACb,OAAO,IAAI;eACZ,MAAM;gBACL,OAAO,KAAK;;YAEhB,CAAC,EArBwDrB,aAAA,EAcjDoB,CAAC,GAAGrB,CAAC,CAACsB,CAAC,CAAC,GAAGnB,eAAA,CAAAG,UAAA,CAAc,KAAK,EAdmBL,aAAA,CAclB,CAOrC;UACJ,CAAC,EAtB0DA,aAAA,EAYjDI,MAAM,CAUd;;;MAGN,OAAOF,eAAA,CAAAD,EAAA,OAAUK,GAAG,CAACK,MAAM,EAAE,EAzBkCX,aAAA,EAyBxDI,MAAM,CAAiB;IAChC,CAAC,EA1BgEJ,aAAA,CA0B/D;EACJ,CAAC;AACH"}
1
+ {"version":3,"file":"takeWhileIO.mjs","names":["takeWhileIO","p","__tsplusTrace","self","tsplus_module_1","defer","takeWhileIOLoop","Symbol","iterator","index","result","next","done","flatMap","b","succeed","tsplus_module_2","take","value","tsplus_module_3","empty"],"sources":["../../../../_src/collection/immutable/Conc/takeWhileIO.ts"],"sourcesContent":[null],"mappings":";;;AAAA;;;AAGA,OAAM,SAAUA,WAAWA,CAAUC,CAA8B,EAAEC,aAAsB;EACzF,OAAQC,IAAa,IAAuB;IAC1C,OAAOC,eAAA,CAAAC,KAAA,OAASC,eAAe,CAACH,IAAI,EAAEA,IAAI,CAACI,MAAM,CAACC,QAAQ,CAAC,EAAE,EAAEP,CAAC,EAAE,CAAC,EAFFC,aAAA,CAEG,EAFHA,aAAA,CAEI;EACvE,CAAC;AACH;AAEA,SAASI,eAAeA,CACtBH,IAAa,EACbK,QAAqB,EACrBP,CAA8B,EAC9BQ,KAAa,EACbP,aAAsB;EAEtB,IAAIQ,MAAyB;EAC7B,IAAI,CAAC,CAACA,MAAM,GAAGF,QAAQ,CAACG,IAAI,EAAE,EAAEC,IAAI,EAAE;IACpC,OAAOR,eAAA,CAAAS,OAAA,CAAyBC,CAAC,IAC/BA,CAAC,GAAGR,eAAe,CAACH,IAAI,EAAEK,QAAQ,EAAEP,CAAC,EAAEQ,KAAK,GAAG,CAAC,EALpDP,aAAA,CAKqD,GAAGE,eAAA,CAAAW,OAAA,OAAWC,eAAA,CAAAC,IAAA,CAAUR,KAAK,EAAfN,IAAI,CAAY,EALnFD,aAAA,CAKoF,EALpFA,aAAA,EAISD,CAAC,CAACS,MAAM,CAACQ,KAAK,CAAC,CAErB;GACF,MAAM;IACL,OAAOd,eAAA,CAAAW,OAAA,OAAWI,eAAA,CAAAC,KAAA,EAAY,EARhClB,aAAA,CAQiC;;AAEnC"}
@@ -827,10 +827,10 @@ export function mapOut<OutElem, OutElem2>(f: (o: OutElem) => OutElem2) {
827
827
  const mapOutIOReader = <Env, Env1, OutErr, OutErr1, OutElem, OutElem1, OutDone>(
828
828
  f: (o: OutElem) => IO<Env1, OutErr1, OutElem1>,
829
829
  ): Channel<Env | Env1, OutErr, OutElem, OutDone, OutErr | OutErr1, OutElem1, OutDone> =>
830
- Channel.readWith(
830
+ Channel.readWithCause(
831
831
  (out) => Channel.fromIO(f(out)).flatMap(Channel.writeNow).zipRight(mapOutIOReader(f)),
832
- Channel.failNow,
833
- Channel.endNow,
832
+ Channel.failCauseNow,
833
+ Channel.succeedNow,
834
834
  );
835
835
 
836
836
  /**
@@ -1,5 +1,6 @@
1
1
  import type { FiberStatus } from "../FiberStatus.js";
2
2
  import type { OnFailure, OnSuccess, OnSuccessAndFailure, UIO } from "../IO/definition.js";
3
+ import type { WhileLoop } from "../IO/definition.js";
3
4
  import type { RuntimeFlags } from "../RuntimeFlags.js";
4
5
 
5
6
  import { isIOError } from "@fncts/base/data/exceptions";
@@ -12,29 +13,22 @@ import { Done, Suspended } from "../FiberStatus.js";
12
13
  import { Running } from "../FiberStatus.js";
13
14
  import { FiberStatusTag } from "../FiberStatus.js";
14
15
  import { LinkedQueue } from "../internal/MutableQueue.js";
15
- import { isIO } from "../IO/definition.js";
16
- import { WhileLoop } from "../IO/definition.js";
17
- import { IOOpCode } from "../IO/definition.js";
16
+ import { IOPrimitive, isIO } from "../IO/definition.js";
17
+ import { IOTag } from "../IO/definition.js";
18
18
  import { RuntimeFlag } from "../RuntimeFlag.js";
19
19
  import { FiberMessage, FiberMessageTag } from "./FiberMessage.js";
20
20
 
21
21
  export class RevertFlags {
22
- readonly _tag = IOOpCode.RevertFlags;
22
+ readonly _tag = IOTag.RevertFlags;
23
23
  constructor(readonly patch: RuntimeFlags.Patch, readonly trace?: string) {}
24
24
  }
25
25
 
26
26
  export class UpdateTrace {
27
- readonly _tag = IOOpCode.UpdateTrace;
27
+ readonly _tag = IOTag.UpdateTrace;
28
28
  constructor(readonly trace?: string) {}
29
29
  }
30
30
 
31
- export type Continuation =
32
- | OnSuccess<any, any, any, any, any, any>
33
- | OnSuccessAndFailure<any, any, any, any, any, any, any, any, any>
34
- | OnFailure<any, any, any, any, any, any>
35
- | WhileLoop<any, any, any>
36
- | UpdateTrace
37
- | RevertFlags;
31
+ export type Continuation = OnSuccess | OnSuccessAndFailure | OnFailure | WhileLoop | UpdateTrace | RevertFlags;
38
32
 
39
33
  /**
40
34
  * @tsplus type fncts.io.Fiber
@@ -268,7 +262,7 @@ export class FiberRuntime<E, A> implements Fiber.Runtime<E, A> {
268
262
  }
269
263
  } catch (e) {
270
264
  if (isIO(e)) {
271
- if (IO.concrete(e)._tag === IOOpCode.YieldNow) {
265
+ if (IO.concrete(e)._tag === IOTag.YieldNow) {
272
266
  if (this._runtimeFlags.cooperativeYielding) {
273
267
  this.tell(FiberMessage.YieldNow);
274
268
  this.tell(FiberMessage.Resume(IO.unit));
@@ -276,7 +270,7 @@ export class FiberRuntime<E, A> implements Fiber.Runtime<E, A> {
276
270
  } else {
277
271
  effect = IO.unit;
278
272
  }
279
- } else if (IO.concrete(e)._tag === IOOpCode.Async) {
273
+ } else if (IO.concrete(e)._tag === IOTag.Async) {
280
274
  effect = null!;
281
275
  } else {
282
276
  throw new Error(`Unhandled op ${IO.concrete(e)._tag}`);
@@ -302,6 +296,7 @@ export class FiberRuntime<E, A> implements Fiber.Runtime<E, A> {
302
296
  if (this._runtimeFlags.opSupervision) {
303
297
  this.getSupervisor().unsafeOnEffect(this, cur);
304
298
  }
299
+
305
300
  const nextTrace = IO.concrete(cur).trace;
306
301
  if (nextTrace !== undefined) lastTrace = nextTrace;
307
302
 
@@ -317,27 +312,30 @@ export class FiberRuntime<E, A> implements Fiber.Runtime<E, A> {
317
312
  }
318
313
  try {
319
314
  switch (cur._tag) {
320
- case IOOpCode.Sync: {
321
- const value = cur.evaluate();
315
+ case IOTag.Sync: {
316
+ const value = cur.i0();
322
317
  const cont = this.getNextSuccessCont();
323
318
  if (cont) {
324
319
  switch (cont._tag) {
325
- case IOOpCode.OnSuccess:
326
- case IOOpCode.OnSuccessAndFailure: {
327
- cur = IO.concrete(cont.successK(value));
320
+ case IOTag.OnSuccess: {
321
+ cur = IO.concrete(cont.i1(value));
322
+ break;
323
+ }
324
+ case IOTag.OnSuccessAndFailure: {
325
+ cur = IO.concrete(cont.i2(value));
328
326
  break;
329
327
  }
330
- case IOOpCode.WhileLoop: {
331
- cont.process(value);
332
- if (cont.check()) {
328
+ case IOTag.WhileLoop: {
329
+ cont.i2(value);
330
+ if (cont.i0()) {
333
331
  this.stack.push(cont);
334
- cur = IO.concrete(cont.body());
332
+ cur = IO.concrete(cont.i1());
335
333
  } else {
336
334
  cur = IO.concrete(IO.unit);
337
335
  }
338
336
  break;
339
337
  }
340
- case IOOpCode.RevertFlags: {
338
+ case IOTag.RevertFlags: {
341
339
  this.patchRuntimeFlags(this._runtimeFlags, cont.patch);
342
340
  if (this._runtimeFlags.interruptible && this.isInterrupted()) {
343
341
  cur = IO.concrete(IO.failCauseNow(this.getInterruptedCause()));
@@ -346,7 +344,7 @@ export class FiberRuntime<E, A> implements Fiber.Runtime<E, A> {
346
344
  }
347
345
  break;
348
346
  }
349
- case IOOpCode.UpdateTrace: {
347
+ case IOTag.UpdateTrace: {
350
348
  if (cont.trace !== undefined) lastTrace = cont.trace;
351
349
  cur = IO.concrete(IO.unit);
352
350
  break;
@@ -357,26 +355,26 @@ export class FiberRuntime<E, A> implements Fiber.Runtime<E, A> {
357
355
  }
358
356
  break;
359
357
  }
360
- case IOOpCode.OnSuccessAndFailure:
361
- case IOOpCode.OnFailure:
362
- case IOOpCode.OnSuccess: {
358
+ case IOTag.OnSuccessAndFailure:
359
+ case IOTag.OnFailure:
360
+ case IOTag.OnSuccess: {
363
361
  this.stack.push(cur);
364
- cur = IO.concrete(cur.first);
362
+ cur = IO.concrete(cur.i0);
365
363
  break;
366
364
  }
367
- case IOOpCode.Async: {
365
+ case IOTag.Async: {
368
366
  this.asyncTrace = lastTrace;
369
- this.asyncBlockinOn = cur.blockingOn();
370
- this.initiateAsync(this._runtimeFlags, cur.registerCallback);
367
+ this.asyncBlockinOn = cur.i1();
368
+ this.initiateAsync(this._runtimeFlags, cur.i0);
371
369
  throw cur;
372
370
  }
373
- case IOOpCode.UpdateRuntimeFlagsWithin: {
374
- const updateFlags = cur.update;
371
+ case IOTag.UpdateRuntimeFlagsWithin: {
372
+ const updateFlags = cur.i0;
375
373
  const oldRuntimeFlags = this._runtimeFlags;
376
374
  const newRuntimeFlags = updateFlags.patch(oldRuntimeFlags);
377
375
 
378
376
  if (newRuntimeFlags === oldRuntimeFlags) {
379
- cur = IO.concrete(cur.scope(oldRuntimeFlags));
377
+ cur = IO.concrete(cur.i1(oldRuntimeFlags));
380
378
  } else {
381
379
  if (newRuntimeFlags.interruptible && this.isInterrupted()) {
382
380
  cur = IO.concrete(IO.failCauseNow(this.getInterruptedCause()));
@@ -384,72 +382,75 @@ export class FiberRuntime<E, A> implements Fiber.Runtime<E, A> {
384
382
  this.patchRuntimeFlags(this._runtimeFlags, updateFlags);
385
383
  const revertFlags = newRuntimeFlags.diff(oldRuntimeFlags);
386
384
  this.stack.push(new RevertFlags(revertFlags));
387
- cur = IO.concrete(cur.scope(oldRuntimeFlags));
385
+ cur = IO.concrete(cur.i1(oldRuntimeFlags));
388
386
  }
389
387
  }
390
388
  break;
391
389
  }
392
- case IOOpCode.GenerateStackTrace: {
390
+ case IOTag.GenerateStackTrace: {
393
391
  cur = IO.concrete(IO.succeedNow(this.generateStackTrace()));
394
392
  break;
395
393
  }
396
- case IOOpCode.Stateful: {
397
- cur = IO.concrete(cur.onState(this, new Running(this._runtimeFlags, lastTrace)));
394
+ case IOTag.Stateful: {
395
+ cur = IO.concrete(cur.i0(this, new Running(this._runtimeFlags, lastTrace)));
398
396
  break;
399
397
  }
400
- case IOOpCode.SucceedNow: {
398
+ case IOTag.SucceedNow: {
401
399
  const oldCur = cur;
402
400
  const cont = this.getNextSuccessCont();
403
401
  if (cont) {
404
402
  switch (cont._tag) {
405
- case IOOpCode.OnSuccess:
406
- case IOOpCode.OnSuccessAndFailure: {
407
- cur = IO.concrete(cont.successK(oldCur.value));
403
+ case IOTag.OnSuccess: {
404
+ cur = IO.concrete(cont.i1(oldCur.i0));
405
+ break;
406
+ }
407
+ case IOTag.OnSuccessAndFailure: {
408
+ cur = IO.concrete(cont.i2(oldCur.i0));
408
409
  break;
409
410
  }
410
- case IOOpCode.WhileLoop: {
411
- cont.process(oldCur.value);
412
- if (cont.check()) {
411
+ case IOTag.WhileLoop: {
412
+ cont.i2(oldCur.i0);
413
+ if (cont.i0()) {
413
414
  this.stack.push(cont);
414
- cur = IO.concrete(cont.body());
415
+ cur = IO.concrete(cont.i1());
415
416
  } else {
416
417
  cur = IO.concrete(IO.unit);
417
418
  }
418
419
  break;
419
420
  }
420
- case IOOpCode.RevertFlags: {
421
+ case IOTag.RevertFlags: {
421
422
  this.patchRuntimeFlags(this._runtimeFlags, cont.patch);
422
423
  if (this._runtimeFlags.interruptible && this.isInterrupted()) {
423
424
  cur = IO.concrete(IO.failCauseNow(this.getInterruptedCause()));
424
425
  }
425
426
  break;
426
427
  }
427
- case IOOpCode.UpdateTrace: {
428
+ case IOTag.UpdateTrace: {
428
429
  if (cont.trace !== undefined) lastTrace = cont.trace;
429
430
  cur = IO.concrete(IO.unit);
430
431
  break;
431
432
  }
432
433
  }
433
434
  } else {
434
- return Exit.succeed(oldCur.value);
435
+ return Exit.succeed(oldCur.i0);
435
436
  }
436
437
  break;
437
438
  }
438
- case IOOpCode.Fail: {
439
- const cause = cur.cause();
439
+ case IOTag.Fail: {
440
+ const cause = cur.i0();
440
441
  const cont = this.getNextFailCont();
441
442
  if (cont) {
442
443
  switch (cont._tag) {
443
- case IOOpCode.OnFailure:
444
- case IOOpCode.OnSuccessAndFailure: {
444
+ case IOTag.OnFailure:
445
+ case IOTag.OnSuccessAndFailure: {
445
446
  if (!(this._runtimeFlags.interruptible && this.isInterrupted())) {
446
- cur = IO.concrete(cont.failureK(cause));
447
+ cur = IO.concrete(cont.i1(cause));
447
448
  } else {
448
449
  cur = IO.concrete(IO.failCauseNow(cause.stripFailures));
449
450
  }
450
451
  break;
451
452
  }
452
- case IOOpCode.RevertFlags: {
453
+ case IOTag.RevertFlags: {
453
454
  this.patchRuntimeFlags(this._runtimeFlags, cont.patch);
454
455
  if (this._runtimeFlags.interruptible && this.isInterrupted()) {
455
456
  const interruptedCause = this.getInterruptedCause();
@@ -461,7 +462,7 @@ export class FiberRuntime<E, A> implements Fiber.Runtime<E, A> {
461
462
  }
462
463
  break;
463
464
  }
464
- case IOOpCode.UpdateTrace: {
465
+ case IOTag.UpdateTrace: {
465
466
  if (cont.trace !== undefined) lastTrace = cont.trace;
466
467
  cur = IO.concrete(IO.unit);
467
468
  break;
@@ -472,15 +473,15 @@ export class FiberRuntime<E, A> implements Fiber.Runtime<E, A> {
472
473
  }
473
474
  break;
474
475
  }
475
- case IOOpCode.UpdateRuntimeFlags: {
476
- this.patchRuntimeFlags(this._runtimeFlags, cur.update);
476
+ case IOTag.UpdateRuntimeFlags: {
477
+ this.patchRuntimeFlags(this._runtimeFlags, cur.i0);
477
478
  cur = IO.concrete(IO.unit);
478
479
  break;
479
480
  }
480
- case IOOpCode.WhileLoop: {
481
+ case IOTag.WhileLoop: {
481
482
  const iterate = cur;
482
- const check = iterate.check;
483
- const body = iterate.body;
483
+ const check = iterate.i0;
484
+ const body = iterate.i1;
484
485
  if (check()) {
485
486
  cur = IO.concrete(body());
486
487
  this.stack.push(iterate);
@@ -489,10 +490,10 @@ export class FiberRuntime<E, A> implements Fiber.Runtime<E, A> {
489
490
  }
490
491
  break;
491
492
  }
492
- case IOOpCode.YieldNow: {
493
+ case IOTag.YieldNow: {
493
494
  throw cur;
494
495
  }
495
- case IOOpCode.Commit: {
496
+ case IOTag.Commit: {
496
497
  cur = IO.concrete(cur.commit);
497
498
  break;
498
499
  }
@@ -524,7 +525,7 @@ export class FiberRuntime<E, A> implements Fiber.Runtime<E, A> {
524
525
  } catch (e) {
525
526
  if (isIOError(e)) {
526
527
  cur = IO.concrete(IO.failCauseNow(e.cause));
527
- } else if (isIO(e) && (IO.concrete(e)._tag === IOOpCode.Async || IO.concrete(e)._tag === IOOpCode.YieldNow)) {
528
+ } else if (isIO(e) && (IO.concrete(e)._tag === IOTag.Async || IO.concrete(e)._tag === IOTag.YieldNow)) {
528
529
  throw e;
529
530
  } else if (isInterruptedException(e)) {
530
531
  cur = IO.concrete(IO.failCauseNow(Cause.parallel(Cause.halt(e), Cause.interrupt(FiberId.none))));
@@ -622,14 +623,14 @@ export class FiberRuntime<E, A> implements Fiber.Runtime<E, A> {
622
623
  }
623
624
  };
624
625
 
625
- return new WhileLoop(
626
- check,
627
- body,
628
- () => {
629
- //
630
- },
631
- this.id.location,
632
- );
626
+ const io = new IOPrimitive(IOTag.WhileLoop) as any;
627
+ io.i0 = check;
628
+ io.i1 = body;
629
+ io.i2 = () => {
630
+ //
631
+ };
632
+
633
+ return io;
633
634
  } else {
634
635
  return null!;
635
636
  }
@@ -822,7 +823,7 @@ export class FiberRuntime<E, A> implements Fiber.Runtime<E, A> {
822
823
  getNextSuccessCont() {
823
824
  while (this.stack.hasNext) {
824
825
  const frame = this.stack.pop()!;
825
- if (frame._tag !== IOOpCode.OnFailure) {
826
+ if (frame._tag !== IOTag.OnFailure) {
826
827
  return frame;
827
828
  }
828
829
  }
@@ -831,7 +832,7 @@ export class FiberRuntime<E, A> implements Fiber.Runtime<E, A> {
831
832
  getNextFailCont() {
832
833
  while (this.stack.hasNext) {
833
834
  const frame = this.stack.pop()!;
834
- if (frame._tag !== IOOpCode.OnSuccess && frame._tag !== IOOpCode.WhileLoop) {
835
+ if (frame._tag !== IOTag.OnSuccess && frame._tag !== IOTag.WhileLoop) {
835
836
  return frame;
836
837
  }
837
838
  }
@@ -41,3 +41,8 @@ export function interrupted(id: FiberId, __tsplusTrace?: string): Fiber<never, n
41
41
  export function succeed<A>(a: A, __tsplusTrace?: string): Fiber<never, A> {
42
42
  return done(Exit.succeed(a));
43
43
  }
44
+
45
+ /**
46
+ * @tsplus static fncts.io.FiberOps unit
47
+ */
48
+ export const unit: Fiber<never, void> = succeed(undefined);