@fncts/io 0.0.24 → 0.0.25

Sign up to get free protection for your applications and to get access to all the features.
Files changed (211) hide show
  1. package/FiberRef/api.d.ts +0 -63
  2. package/FiberRef/operations.d.ts +64 -0
  3. package/FiberRef.d.ts +1 -0
  4. package/FiberRefs/api.d.ts +6 -1
  5. package/FiberRefs.d.ts +0 -1
  6. package/IO/api/daemonChildren.d.ts +6 -0
  7. package/IO/api/disconnect.d.ts +17 -0
  8. package/IO/api/fork.d.ts +4 -0
  9. package/IO/api/forkDaemon.d.ts +10 -0
  10. package/IO/api/interrupt.d.ts +1 -20
  11. package/IO/api/race.d.ts +7 -1
  12. package/IO/api/raceWith.d.ts +17 -0
  13. package/IO/api/transplant.d.ts +13 -0
  14. package/IO.d.ts +5 -1
  15. package/RefSubject/Atomic.d.ts +1 -1
  16. package/_cjs/Cached/api.cjs +1 -1
  17. package/_cjs/Channel/api/mergeAllWith.cjs +1 -1
  18. package/_cjs/Channel/api/mergeWith.cjs +17 -16
  19. package/_cjs/Channel/api/mergeWith.cjs.map +1 -1
  20. package/_cjs/Channel/api.cjs +1 -3
  21. package/_cjs/Channel/api.cjs.map +1 -1
  22. package/_cjs/Fiber/FiberRuntime.cjs +16 -17
  23. package/_cjs/Fiber/FiberRuntime.cjs.map +1 -1
  24. package/_cjs/FiberRef/api/locallyScoped.cjs +1 -1
  25. package/_cjs/FiberRef/api/locallyScopedWith.cjs +1 -1
  26. package/_cjs/FiberRef/api.cjs +0 -124
  27. package/_cjs/FiberRef/api.cjs.map +1 -1
  28. package/_cjs/FiberRef/constructors.cjs +1 -1
  29. package/_cjs/FiberRef/operations.cjs +130 -0
  30. package/_cjs/FiberRef/operations.cjs.map +1 -0
  31. package/_cjs/FiberRef.cjs +11 -0
  32. package/_cjs/FiberRef.cjs.map +1 -1
  33. package/_cjs/FiberRefs/api.cjs +90 -0
  34. package/_cjs/FiberRefs/api.cjs.map +1 -1
  35. package/_cjs/FiberRefs.cjs +0 -11
  36. package/_cjs/FiberRefs.cjs.map +1 -1
  37. package/_cjs/Future/api.cjs +1 -3
  38. package/_cjs/Future/api.cjs.map +1 -1
  39. package/_cjs/IO/api/asyncIO.cjs +1 -3
  40. package/_cjs/IO/api/asyncIO.cjs.map +1 -1
  41. package/_cjs/IO/api/bracketExit.cjs +1 -3
  42. package/_cjs/IO/api/bracketExit.cjs.map +1 -1
  43. package/_cjs/IO/api/clockWith.cjs +1 -1
  44. package/_cjs/IO/api/concurrency.cjs +1 -1
  45. package/_cjs/IO/api/consoleWith.cjs +1 -1
  46. package/_cjs/IO/api/daemonChildren.cjs +19 -0
  47. package/_cjs/IO/api/daemonChildren.cjs.map +1 -0
  48. package/_cjs/IO/api/disconnect.cjs +31 -0
  49. package/_cjs/IO/api/disconnect.cjs.map +1 -0
  50. package/_cjs/IO/api/environment.cjs +1 -1
  51. package/_cjs/IO/api/foreachConcurrent.cjs +19 -20
  52. package/_cjs/IO/api/foreachConcurrent.cjs.map +1 -1
  53. package/_cjs/IO/api/fork.cjs +8 -3
  54. package/_cjs/IO/api/fork.cjs.map +1 -1
  55. package/_cjs/IO/api/forkDaemon.cjs +21 -0
  56. package/_cjs/IO/api/forkDaemon.cjs.map +1 -0
  57. package/_cjs/IO/api/forkIn.cjs +2 -4
  58. package/_cjs/IO/api/forkIn.cjs.map +1 -1
  59. package/_cjs/IO/api/forkScoped.cjs +2 -4
  60. package/_cjs/IO/api/forkScoped.cjs.map +1 -1
  61. package/_cjs/IO/api/fulfill.cjs +1 -3
  62. package/_cjs/IO/api/fulfill.cjs.map +1 -1
  63. package/_cjs/IO/api/interrupt.cjs +8 -59
  64. package/_cjs/IO/api/interrupt.cjs.map +1 -1
  65. package/_cjs/IO/api/race.cjs +24 -12
  66. package/_cjs/IO/api/race.cjs.map +1 -1
  67. package/_cjs/IO/api/{core-scope.cjs → raceWith.cjs} +15 -56
  68. package/_cjs/IO/api/raceWith.cjs.map +1 -0
  69. package/_cjs/IO/api/randomWith.cjs +1 -1
  70. package/_cjs/IO/api/supervised.cjs +1 -1
  71. package/_cjs/IO/api/transplant.cjs +31 -0
  72. package/_cjs/IO/api/transplant.cjs.map +1 -0
  73. package/_cjs/IO/api/zipConcurrent.cjs +5 -6
  74. package/_cjs/IO/api/zipConcurrent.cjs.map +1 -1
  75. package/_cjs/IO.cjs +48 -4
  76. package/_cjs/IO.cjs.map +1 -1
  77. package/_cjs/Layer/MemoMap.cjs +1 -3
  78. package/_cjs/Layer/MemoMap.cjs.map +1 -1
  79. package/_cjs/RefSubject/Atomic.cjs +2 -2
  80. package/_cjs/RefSubject/Atomic.cjs.map +1 -1
  81. package/_cjs/Reloadable/constructors.cjs +1 -1
  82. package/_cjs/Reloadable/definition.cjs +1 -1
  83. package/_cjs/STM/api/atomically.cjs +2 -4
  84. package/_cjs/STM/api/atomically.cjs.map +1 -1
  85. package/_cjs/ScopedRef/api.cjs +2 -6
  86. package/_cjs/ScopedRef/api.cjs.map +1 -1
  87. package/_cjs/State/api.cjs +1 -1
  88. package/_cjs/Stream/api.cjs +137 -135
  89. package/_cjs/Stream/api.cjs.map +1 -1
  90. package/_cjs/TReentrantLock/api.cjs +2 -6
  91. package/_cjs/TReentrantLock/api.cjs.map +1 -1
  92. package/_cjs/TSemaphore/api.cjs +1 -3
  93. package/_cjs/TSemaphore/api.cjs.map +1 -1
  94. package/_mjs/Cached/api.mjs +1 -1
  95. package/_mjs/Channel/api/mergeAllWith.mjs +1 -1
  96. package/_mjs/Channel/api/mergeWith.mjs +17 -16
  97. package/_mjs/Channel/api/mergeWith.mjs.map +1 -1
  98. package/_mjs/Channel/api.mjs +1 -3
  99. package/_mjs/Channel/api.mjs.map +1 -1
  100. package/_mjs/Fiber/FiberRuntime.mjs +16 -17
  101. package/_mjs/Fiber/FiberRuntime.mjs.map +1 -1
  102. package/_mjs/FiberRef/api/locallyScoped.mjs +1 -1
  103. package/_mjs/FiberRef/api/locallyScopedWith.mjs +1 -1
  104. package/_mjs/FiberRef/api.mjs +0 -107
  105. package/_mjs/FiberRef/api.mjs.map +1 -1
  106. package/_mjs/FiberRef/constructors.mjs +1 -1
  107. package/_mjs/FiberRef/operations.mjs +109 -0
  108. package/_mjs/FiberRef/operations.mjs.map +1 -0
  109. package/_mjs/FiberRef.mjs +1 -0
  110. package/_mjs/FiberRef.mjs.map +1 -1
  111. package/_mjs/FiberRefs/api.mjs +89 -0
  112. package/_mjs/FiberRefs/api.mjs.map +1 -1
  113. package/_mjs/FiberRefs.mjs +0 -1
  114. package/_mjs/FiberRefs.mjs.map +1 -1
  115. package/_mjs/Future/api.mjs +1 -3
  116. package/_mjs/Future/api.mjs.map +1 -1
  117. package/_mjs/IO/api/asyncIO.mjs +1 -3
  118. package/_mjs/IO/api/asyncIO.mjs.map +1 -1
  119. package/_mjs/IO/api/bracketExit.mjs +1 -3
  120. package/_mjs/IO/api/bracketExit.mjs.map +1 -1
  121. package/_mjs/IO/api/clockWith.mjs +1 -1
  122. package/_mjs/IO/api/concurrency.mjs +1 -1
  123. package/_mjs/IO/api/consoleWith.mjs +1 -1
  124. package/_mjs/IO/api/daemonChildren.mjs +11 -0
  125. package/_mjs/IO/api/daemonChildren.mjs.map +1 -0
  126. package/_mjs/IO/api/disconnect.mjs +23 -0
  127. package/_mjs/IO/api/disconnect.mjs.map +1 -0
  128. package/_mjs/IO/api/environment.mjs +1 -1
  129. package/_mjs/IO/api/foreachConcurrent.mjs +19 -20
  130. package/_mjs/IO/api/foreachConcurrent.mjs.map +1 -1
  131. package/_mjs/IO/api/fork.mjs +6 -2
  132. package/_mjs/IO/api/fork.mjs.map +1 -1
  133. package/_mjs/IO/api/forkDaemon.mjs +13 -0
  134. package/_mjs/IO/api/forkDaemon.mjs.map +1 -0
  135. package/_mjs/IO/api/forkIn.mjs +2 -4
  136. package/_mjs/IO/api/forkIn.mjs.map +1 -1
  137. package/_mjs/IO/api/forkScoped.mjs +2 -4
  138. package/_mjs/IO/api/forkScoped.mjs.map +1 -1
  139. package/_mjs/IO/api/fulfill.mjs +1 -3
  140. package/_mjs/IO/api/fulfill.mjs.map +1 -1
  141. package/_mjs/IO/api/interrupt.mjs +6 -55
  142. package/_mjs/IO/api/interrupt.mjs.map +1 -1
  143. package/_mjs/IO/api/race.mjs +22 -12
  144. package/_mjs/IO/api/race.mjs.map +1 -1
  145. package/_mjs/IO/api/raceWith.mjs +59 -0
  146. package/_mjs/IO/api/raceWith.mjs.map +1 -0
  147. package/_mjs/IO/api/randomWith.mjs +1 -1
  148. package/_mjs/IO/api/supervised.mjs +1 -1
  149. package/_mjs/IO/api/transplant.mjs +23 -0
  150. package/_mjs/IO/api/transplant.mjs.map +1 -0
  151. package/_mjs/IO/api/zipConcurrent.mjs +5 -6
  152. package/_mjs/IO/api/zipConcurrent.mjs.map +1 -1
  153. package/_mjs/IO.mjs +5 -1
  154. package/_mjs/IO.mjs.map +1 -1
  155. package/_mjs/Layer/MemoMap.mjs +1 -3
  156. package/_mjs/Layer/MemoMap.mjs.map +1 -1
  157. package/_mjs/RefSubject/Atomic.mjs +1 -1
  158. package/_mjs/RefSubject/Atomic.mjs.map +1 -1
  159. package/_mjs/Reloadable/constructors.mjs +1 -1
  160. package/_mjs/Reloadable/definition.mjs +1 -1
  161. package/_mjs/STM/api/atomically.mjs +2 -4
  162. package/_mjs/STM/api/atomically.mjs.map +1 -1
  163. package/_mjs/ScopedRef/api.mjs +2 -6
  164. package/_mjs/ScopedRef/api.mjs.map +1 -1
  165. package/_mjs/State/api.mjs +1 -1
  166. package/_mjs/Stream/api.mjs +137 -135
  167. package/_mjs/Stream/api.mjs.map +1 -1
  168. package/_mjs/TReentrantLock/api.mjs +2 -6
  169. package/_mjs/TReentrantLock/api.mjs.map +1 -1
  170. package/_mjs/TSemaphore/api.mjs +1 -3
  171. package/_mjs/TSemaphore/api.mjs.map +1 -1
  172. package/_src/Channel/api.ts +1 -1
  173. package/_src/FiberRef/api.ts +0 -114
  174. package/_src/FiberRef/operations.ts +115 -0
  175. package/_src/FiberRef.ts +1 -0
  176. package/_src/FiberRefs/api.ts +72 -0
  177. package/_src/FiberRefs.ts +0 -1
  178. package/_src/Future/api.ts +1 -1
  179. package/_src/IO/api/asyncIO.ts +1 -1
  180. package/_src/IO/api/bracketExit.ts +1 -1
  181. package/_src/IO/api/daemonChildren.ts +6 -0
  182. package/_src/IO/api/disconnect.ts +25 -0
  183. package/_src/IO/api/foreachConcurrent.ts +1 -1
  184. package/_src/IO/api/fork.ts +3 -0
  185. package/_src/IO/api/forkDaemon.ts +12 -0
  186. package/_src/IO/api/forkIn.ts +1 -1
  187. package/_src/IO/api/forkScoped.ts +1 -3
  188. package/_src/IO/api/fulfill.ts +1 -1
  189. package/_src/IO/api/interrupt.ts +5 -56
  190. package/_src/IO/api/race.ts +18 -8
  191. package/_src/IO/api/{core-scope.ts → raceWith.ts} +2 -44
  192. package/_src/IO/api/transplant.ts +19 -0
  193. package/_src/IO/api/zipConcurrent.ts +1 -1
  194. package/_src/IO.ts +5 -1
  195. package/_src/Layer/MemoMap.ts +1 -1
  196. package/_src/RefSubject/Atomic.ts +1 -1
  197. package/_src/STM/api/atomically.ts +1 -1
  198. package/_src/ScopedRef/api.ts +2 -2
  199. package/_src/TReentrantLock/api.ts +2 -2
  200. package/_src/TSemaphore/api.ts +1 -1
  201. package/package.json +1 -1
  202. package/FiberRefs/join.d.ts +0 -9
  203. package/IO/api/core-scope.d.ts +0 -43
  204. package/_cjs/FiberRefs/join.cjs +0 -104
  205. package/_cjs/FiberRefs/join.cjs.map +0 -1
  206. package/_cjs/IO/api/core-scope.cjs.map +0 -1
  207. package/_mjs/FiberRefs/join.mjs +0 -96
  208. package/_mjs/FiberRefs/join.mjs.map +0 -1
  209. package/_mjs/IO/api/core-scope.mjs +0 -97
  210. package/_mjs/IO/api/core-scope.mjs.map +0 -1
  211. package/_src/FiberRefs/join.ts +0 -71
@@ -11,7 +11,7 @@ var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require
11
11
  var tsplus_module_5 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Future/api"));
12
12
  var tsplus_module_6 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/FiberMessage"));
13
13
  var tsplus_module_7 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/Conc/constructors"));
14
- var tsplus_module_8 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberRefs/join"));
14
+ var tsplus_module_8 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberRefs/api"));
15
15
  var tsplus_module_9 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/RuntimeFlags/RuntimeFlags"));
16
16
  var tsplus_module_10 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/RuntimeFlags/Patch"));
17
17
  var tsplus_module_11 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Cause/api"));
@@ -23,14 +23,13 @@ var tsplus_module_16 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/requir
23
23
  var tsplus_module_17 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/STM/api/atomically"));
24
24
  var tsplus_module_18 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/FiberId/constructors"));
25
25
  var tsplus_module_19 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Cause/api/isEmpty"));
26
- var tsplus_module_20 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberRefs/api"));
27
- var tsplus_module_21 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/TraceElement/definition"));
28
- var tsplus_module_22 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/List/api"));
29
- var tsplus_module_23 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberScope/constructors"));
30
- var tsplus_module_24 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/api"));
31
- var tsplus_module_25 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/LogLevel"));
32
- var tsplus_module_26 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Logger/constructors"));
33
- var tsplus_module_27 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Logger/api"));
26
+ var tsplus_module_20 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/TraceElement/definition"));
27
+ var tsplus_module_21 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/List/api"));
28
+ var tsplus_module_22 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberScope/constructors"));
29
+ var tsplus_module_23 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/api"));
30
+ var tsplus_module_24 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/LogLevel"));
31
+ var tsplus_module_25 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Logger/constructors"));
32
+ var tsplus_module_26 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Logger/api"));
34
33
  var _Trace = /*#__PURE__*/require("@fncts/base/data/Trace");
35
34
  var _definition3 = /*#__PURE__*/require("@fncts/io/Fiber/definition");
36
35
  var _StackTraceBuilder = /*#__PURE__*/require("@fncts/io/internal/StackTraceBuilder");
@@ -500,7 +499,7 @@ class FiberRuntime {
500
499
  return !tsplus_module_19.isEmpty(this.getFiberRef(tsplus_module_12.interruptedCause));
501
500
  }
502
501
  getFiberRef(fiberRef) {
503
- return tsplus_module_20.getOrDefault(this._fiberRefs, fiberRef);
502
+ return tsplus_module_8.getOrDefault(this._fiberRefs, fiberRef);
504
503
  }
505
504
  tell(message) {
506
505
  this.queue.enqueue(message);
@@ -583,7 +582,7 @@ class FiberRuntime {
583
582
  }
584
583
  }
585
584
  setFiberRef(fiberRef, value) {
586
- this._fiberRefs = tsplus_module_20.updateAs(this._fiberRefs, this.fiberId, fiberRef, value);
585
+ this._fiberRefs = tsplus_module_8.updateAs(this._fiberRefs, this.fiberId, fiberRef, value);
587
586
  }
588
587
  addInterruptedCause(cause) {
589
588
  const oldSC = this.getFiberRef(tsplus_module_12.interruptedCause);
@@ -648,7 +647,7 @@ class FiberRuntime {
648
647
  const builder = new _StackTraceBuilder.StackTraceBuilder();
649
648
  const stack = this.stack.clone();
650
649
  while (stack.hasNext) {
651
- builder.append(tsplus_module_21.parse(stack.pop().trace));
650
+ builder.append(tsplus_module_20.parse(stack.pop().trace));
652
651
  }
653
652
  return new _Trace.Trace(this.fiberId, builder.result());
654
653
  }
@@ -684,7 +683,7 @@ class FiberRuntime {
684
683
  this.setFiberRef(fiberRef, f(this.getFiberRef(fiberRef)));
685
684
  }
686
685
  removeObserver(observer) {
687
- this.observers = tsplus_module_22.filter(f => f !== observer)(this.observers);
686
+ this.observers = tsplus_module_21.filter(f => f !== observer)(this.observers);
688
687
  }
689
688
  addChild(child) {
690
689
  this.getChildren().add(child);
@@ -695,17 +694,17 @@ class FiberRuntime {
695
694
  }
696
695
  }
697
696
  get scope() {
698
- return tsplus_module_23.unsafeMake(this);
697
+ return tsplus_module_22.unsafeMake(this);
699
698
  }
700
699
  log(message, cause, overrideLogLevel, trace) {
701
- const logLevel = tsplus_module_24.getOrElse(() => this.getFiberRef(tsplus_module_12.currentLogLevel))(overrideLogLevel);
700
+ const logLevel = tsplus_module_23.getOrElse(() => this.getFiberRef(tsplus_module_12.currentLogLevel))(overrideLogLevel);
702
701
  const spans = this.getFiberRef(tsplus_module_12.currentLogSpan);
703
702
  const annotations = this.getFiberRef(tsplus_module_12.currentLogAnnotations);
704
703
  const contextMap = this.getFiberRefs();
705
- tsplus_module_27.filterLogLevel(level => tsplus_module_25.gte(tsplus_module_25.Info)(level))(tsplus_module_27.map(s => console.log(s))(tsplus_module_26.defaultString)).log(tsplus_module_21.parse(trace), this.fiberId, logLevel, message, cause, contextMap, spans, annotations);
704
+ tsplus_module_26.filterLogLevel(level => tsplus_module_24.gte(tsplus_module_24.Info)(level))(tsplus_module_26.map(s => console.log(s))(tsplus_module_25.defaultString)).log(tsplus_module_20.parse(trace), this.fiberId, logLevel, message, cause, contextMap, spans, annotations);
706
705
  }
707
706
  deleteFiberRef(ref) {
708
- this._fiberRefs = tsplus_module_20.remove(this._fiberRefs, ref);
707
+ this._fiberRefs = tsplus_module_8.remove(this._fiberRefs, ref);
709
708
  }
710
709
  get status() {
711
710
  return this.ask((_, status) => status);
@@ -1 +1 @@
1
- {"version":3,"file":"FiberRuntime.cjs","mappings":"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","names":["RevertFlags","constructor","patch","trace","UpdateTrace","FiberRuntime","fiberId","fiberRefs0","runtimeFlags0","FiberTypeId","LinkedQueue","tsplus_module_1","Stack","location","_fiberRefs","_runtimeFlags","id","ask","f","tsplus_module_4","future","tsplus_module_3","tell","tsplus_module_6","fiber","status","tsplus_module_5","await","cb","_","_exitValue","exitValue","addObserver","exit","children","tsplus_module_7","getChildren","fiberRefs","getFiberRefs","inheritAll","parentFiber","parentStatus","parentFiberId","parentFiberRefs","parentRuntimeFlags","runtimeFlags","childFiberRefs","updatedFiberRefs","tsplus_module_8","setFiberRefs","childRuntimeFlags","tsplus_module_10","state","_tag","interruptAsFork","cause","tsplus_module_11","getSupervisor","getFiberRef","poll","tsplus_module_13","run","drainQueueOnCurrentThread","recurse","evaluationSignal","queue","isEmpty","evaluateMessageWhileSuspended","dequeue","running","drainQueueLaterOnExecutor","scheduleTask","drainQueueWhileRunning","lastTrace","cur0","cur","message","processNewInterruptSignal","tsplus_module_9","oldCur","stackTrace","onTrace","undefined","onFiber","Running","IllegalStateError","evaluateEffect","effect0","unsafeOnResume","effect","isInterrupted","getInterruptedCause","finalExit","runLoop","interruption","interruptAllChildren","setExitValue","e","ioOpCode","Error","unsafeOnSuspend","ops","unsafeOnEffect","nextTrace","value","evaluate","cont","getNextSuccessCont","successK","process","check","stack","push","body","patchRuntimeFlags","tsplus_module_16","first","asyncTrace","asyncBlockinOn","blockingOn","initiateAsync","registerCallback","updateFlags","update","oldRuntimeFlags","newRuntimeFlags","scope","revertFlags","generateStackTrace","onState","getNextFailCont","failureK","interruptedCause","iterate","tsplus_module_14","fiberRef","tsplus_module_20","enqueue","observer","observers","_children","Set","sendInterruptSignalToAllChildren","size","told","child","iterator","Symbol","next","done","WhileLoop","asyncRegister","alreadyCalled","callback","asyncInterruptor","setFiberRef","addInterruptedCause","oldSC","fiberMessage","Done","Suspended","builder","StackTraceBuilder","clone","hasNext","append","tsplus_module_21","pop","Trace","result","resume","start","startFork","updateFiberRef","removeObserver","tsplus_module_22","addChild","add","removeChild","delete","tsplus_module_23","log","overrideLogLevel","logLevel","tsplus_module_24","spans","annotations","contextMap","tsplus_module_27","level","tsplus_module_25","s","console","deleteFiberRef","ref","frame","isFatal","t","apply"],"sourceRoot":"","sources":["../../_src/Fiber/FiberRuntime.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"FiberRuntime.cjs","mappings":"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","names":["RevertFlags","constructor","patch","trace","UpdateTrace","FiberRuntime","fiberId","fiberRefs0","runtimeFlags0","FiberTypeId","LinkedQueue","tsplus_module_1","Stack","location","_fiberRefs","_runtimeFlags","id","ask","f","tsplus_module_4","future","tsplus_module_3","tell","tsplus_module_6","fiber","status","tsplus_module_5","await","cb","_","_exitValue","exitValue","addObserver","exit","children","tsplus_module_7","getChildren","fiberRefs","getFiberRefs","inheritAll","parentFiber","parentStatus","parentFiberId","parentFiberRefs","parentRuntimeFlags","runtimeFlags","childFiberRefs","updatedFiberRefs","tsplus_module_8","setFiberRefs","childRuntimeFlags","tsplus_module_10","state","_tag","interruptAsFork","cause","tsplus_module_11","getSupervisor","getFiberRef","poll","tsplus_module_13","run","drainQueueOnCurrentThread","recurse","evaluationSignal","queue","isEmpty","evaluateMessageWhileSuspended","dequeue","running","drainQueueLaterOnExecutor","scheduleTask","drainQueueWhileRunning","lastTrace","cur0","cur","message","processNewInterruptSignal","tsplus_module_9","oldCur","stackTrace","onTrace","undefined","onFiber","Running","IllegalStateError","evaluateEffect","effect0","unsafeOnResume","effect","isInterrupted","getInterruptedCause","finalExit","runLoop","interruption","interruptAllChildren","setExitValue","e","ioOpCode","Error","unsafeOnSuspend","ops","unsafeOnEffect","nextTrace","value","evaluate","cont","getNextSuccessCont","successK","process","check","stack","push","body","patchRuntimeFlags","tsplus_module_16","first","asyncTrace","asyncBlockinOn","blockingOn","initiateAsync","registerCallback","updateFlags","update","oldRuntimeFlags","newRuntimeFlags","scope","revertFlags","generateStackTrace","onState","getNextFailCont","failureK","interruptedCause","iterate","tsplus_module_14","fiberRef","enqueue","observer","observers","_children","Set","sendInterruptSignalToAllChildren","size","told","child","iterator","Symbol","next","done","WhileLoop","asyncRegister","alreadyCalled","callback","asyncInterruptor","setFiberRef","addInterruptedCause","oldSC","fiberMessage","Done","Suspended","builder","StackTraceBuilder","clone","hasNext","append","tsplus_module_20","pop","Trace","result","resume","start","startFork","updateFiberRef","removeObserver","tsplus_module_21","addChild","add","removeChild","delete","tsplus_module_22","log","overrideLogLevel","logLevel","tsplus_module_23","spans","annotations","contextMap","tsplus_module_26","level","tsplus_module_24","s","console","deleteFiberRef","ref","frame","isFatal","t","apply"],"sourceRoot":"","sources":["../../_src/Fiber/FiberRuntime.ts"],"sourcesContent":[null]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.locallyScoped = locallyScoped;
7
- var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberRef/api"));
7
+ var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberRef/operations"));
8
8
  var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api"));
9
9
  var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/acquireRelease"));
10
10
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.locallyScopedWith = locallyScopedWith;
7
7
  var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberRef/api/locallyScoped"));
8
- var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberRef/api"));
8
+ var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberRef/operations"));
9
9
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
10
10
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
11
11
  /**
@@ -6,134 +6,10 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.combine = combine;
7
7
  exports.diff = diff;
8
8
  exports.fork = fork;
9
- exports.get = void 0;
10
- exports.getAndSet = getAndSet;
11
- exports.getAndUpdate = getAndUpdate;
12
- exports.getAndUpdateJust = getAndUpdateJust;
13
- exports.getWith = void 0;
14
9
  exports.initial = initial;
15
10
  exports.join = join;
16
- exports.locally = void 0;
17
- exports.locallyWith = locallyWith;
18
- exports.modify = void 0;
19
11
  exports.patch = patch;
20
- exports.remove = remove;
21
- exports.set = set;
22
- exports.update = update;
23
- var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api"));
24
- var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/api"));
25
- var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/interrupt"));
26
12
  var _definition = /*#__PURE__*/require("@fncts/io/FiberRef/definition");
27
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
28
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
29
- const modify = modify_1;
30
- exports.modify = modify;
31
- const get = get_1;
32
- exports.get = get;
33
- const locally = locally_1;
34
- exports.locally = locally;
35
- const getWith = getWith_1;
36
- exports.getWith = getWith;
37
- /**
38
- * @tsplus pipeable fncts.io.FiberRef modify
39
- */
40
- function modify_1(f, __tsplusTrace) {
41
- return self => {
42
- void 0;
43
- return tsplus_module_1.withFiberRuntime(fiber => tsplus_module_1.succeed(() => {
44
- const [result, newValue] = f(fiber.getFiberRef(self));
45
- fiber.setFiberRef(self, newValue);
46
- return result;
47
- }, __tsplusTrace), __tsplusTrace);
48
- };
49
- }
50
- /**
51
- * @tsplus pipeable fncts.io.FiberRef update
52
- */
53
- function update(f, __tsplusTrace) {
54
- return fiberRef => {
55
- return modify_1(a => [undefined, f(a)], __tsplusTrace)(fiberRef);
56
- };
57
- }
58
- /**
59
- * @tsplus pipeable fncts.io.FiberRef set
60
- */
61
- function set(a, __tsplusTrace) {
62
- return fiberRef => {
63
- return modify_1(() => [undefined, a], __tsplusTrace)(fiberRef);
64
- };
65
- }
66
- /**
67
- * @tsplus getter fncts.io.FiberRef get
68
- */
69
- function get_1(fiberRef, __tsplusTrace) {
70
- return modify_1(a => [a, a], __tsplusTrace)(fiberRef);
71
- }
72
- /**
73
- * @tsplus pipeable fncts.io.FiberRef getAndSet
74
- */
75
- function getAndSet(a, __tsplusTrace) {
76
- return fiberRef => {
77
- return modify_1(v => [v, a], __tsplusTrace)(fiberRef);
78
- };
79
- }
80
- /**
81
- * @tsplus pipeable fncts.io.FiberRef getAndUpdate
82
- */
83
- function getAndUpdate(f, __tsplusTrace) {
84
- return fiberRef => {
85
- return modify_1(a => [a, f(a)], __tsplusTrace)(fiberRef);
86
- };
87
- }
88
- /**
89
- * @tsplus pipeable fncts.io.FiberRef getAndUpdateJust
90
- */
91
- function getAndUpdateJust(f, __tsplusTrace) {
92
- return fiberRef => {
93
- return modify_1(a => [a, tsplus_module_2.getOrElse(() => a)(f(a))], __tsplusTrace)(fiberRef);
94
- };
95
- }
96
- /**
97
- * Returns an `IO` that runs with `value` bound to the current fiber.
98
- *
99
- * Guarantees that fiber data is properly restored via `bracket`.
100
- *
101
- * @tsplus fluent fncts.io.FiberRef locally
102
- */
103
- function locally_1(fiberRef, value, __tsplusTrace) {
104
- return use => tsplus_module_1.withFiberRuntime(fiberState => {
105
- const oldValue = fiberState.getFiberRef(fiberRef);
106
- fiberState.setFiberRef(fiberRef, value);
107
- return tsplus_module_3.ensuring(tsplus_module_1.succeed(() => fiberState.setFiberRef(fiberRef, oldValue), __tsplusTrace), __tsplusTrace)(use);
108
- }, __tsplusTrace);
109
- }
110
- /**
111
- * Returns an `IO` that runs with `f` applied to the current fiber.
112
- *
113
- * Guarantees that fiber data is properly restored via `bracket`.
114
- *
115
- * @tsplus fluent fncts.io.FiberRef locallyWith
116
- */
117
- function locallyWith(self, f, __tsplusTrace) {
118
- return use => getWith_1(a => locally_1(self, f(a), __tsplusTrace)(use), __tsplusTrace)(self);
119
- }
120
- /**
121
- * @tsplus pipeable fncts.io.FiberRef getWith
122
- */
123
- function getWith_1(f, __tsplusTrace) {
124
- return fiberRef => {
125
- return tsplus_module_1.flatMap(f, __tsplusTrace)(get_1(fiberRef, __tsplusTrace));
126
- };
127
- }
128
- /**
129
- * @tsplus getter fncts.io.FiberRef remove
130
- */
131
- function remove(self, __tsplusTrace) {
132
- return tsplus_module_1.withFiberRuntime(fiberState => {
133
- fiberState.deleteFiberRef(self);
134
- return tsplus_module_1.unit;
135
- }, __tsplusTrace);
136
- }
137
13
  /**
138
14
  * @tsplus getter fncts.io.FiberRef diff
139
15
  */
@@ -1 +1 @@
1
- {"version":3,"file":"api.cjs","mappings":"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","names":["modify","get","locally","getWith","f","__tsplusTrace","self","tsplus_module_1","fiber","result","newValue","getFiberRef","setFiberRef","update","fiberRef","modify_1","a","undefined","set","getAndSet","v","getAndUpdate","getAndUpdateJust","tsplus_module_2","value","use","fiberState","oldValue","tsplus_module_3","locallyWith","getWith_1","locally_1","remove","deleteFiberRef","diff","_diff","initial","_initial","combine","first","second","_combine","patch","_patch","fork","_fork","join","_join"],"sourceRoot":"","sources":["../../_src/FiberRef/api.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"api.cjs","mappings":";;;;;;;;;;;AAAA;AAEA;;;AAGM,SAAUA,IAAI,CAAeC,IAAsC;EACvE;EACA,OAAO,CAACC,QAAe,EAAEC,QAAe,KAAYF,IAAI,CAACG,KAAK,CAACF,QAAQ,EAAEC,QAAQ,CAAC;AACpF;AAEA;;;AAGM,SAAUE,OAAO,CAAeJ,IAAsC;EAC1E;EACA,OAAOA,IAAI,CAACK,QAAQ;AACtB;AAEA;;;AAGM,SAAUC,OAAO,CAAeN,IAAsC;EAC1E;EACA,OAAO,CAACO,KAAY,EAAEC,MAAa,KAAKR,IAAI,CAACS,QAAQ,CAACF,KAAK,EAAEC,MAAM,CAAC;AACtE;AAEA;;;AAGM,SAAUE,KAAK,CAAeV,IAAsC;EACxE;EACA,OAAQU,KAAY,IAAMT,QAAe,IAAKD,IAAI,CAACW,MAAM,CAACD,KAAK,CAAC,CAACT,QAAQ,CAAC;AAC5E;AAEA;;;AAGM,SAAUW,IAAI,CAAeZ,IAAsC;EACvE;EACA,OAAOA,IAAI,CAACa,KAAK;AACnB;AAEA;;;AAGM,SAAUC,IAAI,CAAQb,QAAe,EAAEC,QAAe;EAC1D,OAAeF,IAAsC,IAAW;IAC9D;IACA,OAAOA,IAAI,CAACe,KAAK,CAACd,QAAQ,EAAEC,QAAQ,CAAC;EACvC,CAAC;AACH","names":["diff","self","oldValue","newValue","_diff","initial","_initial","combine","first","second","_combine","patch","_patch","fork","_fork","join","_join"],"sourceRoot":"","sources":["../../_src/FiberRef/api.ts"],"sourcesContent":[null]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.make = make;
7
- var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberRef/api"));
7
+ var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberRef/operations"));
8
8
  var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api"));
9
9
  var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/acquireRelease"));
10
10
  var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberRef/unsafe"));
@@ -0,0 +1,130 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.get = void 0;
7
+ exports.getAndSet = getAndSet;
8
+ exports.getAndUpdate = getAndUpdate;
9
+ exports.getAndUpdateJust = getAndUpdateJust;
10
+ exports.locally = exports.getWith = void 0;
11
+ exports.locallyWith = locallyWith;
12
+ exports.modify = void 0;
13
+ exports.remove = remove;
14
+ exports.set = set;
15
+ exports.update = update;
16
+ var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api"));
17
+ var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/api"));
18
+ var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/interrupt"));
19
+ var _definition = /*#__PURE__*/require("@fncts/io/FiberRef/definition");
20
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
22
+ const modify = modify_1;
23
+ exports.modify = modify;
24
+ const get = get_1;
25
+ exports.get = get;
26
+ const locally = locally_1;
27
+ exports.locally = locally;
28
+ const getWith = getWith_1;
29
+ exports.getWith = getWith;
30
+ /**
31
+ * @tsplus pipeable fncts.io.FiberRef modify
32
+ */
33
+ function modify_1(f, __tsplusTrace) {
34
+ return self => {
35
+ void 0;
36
+ return tsplus_module_1.withFiberRuntime(fiber => tsplus_module_1.succeed(() => {
37
+ const [result, newValue] = f(fiber.getFiberRef(self));
38
+ fiber.setFiberRef(self, newValue);
39
+ return result;
40
+ }, __tsplusTrace), __tsplusTrace);
41
+ };
42
+ }
43
+ /**
44
+ * @tsplus pipeable fncts.io.FiberRef update
45
+ */
46
+ function update(f, __tsplusTrace) {
47
+ return fiberRef => {
48
+ return modify_1(a => [undefined, f(a)], __tsplusTrace)(fiberRef);
49
+ };
50
+ }
51
+ /**
52
+ * @tsplus pipeable fncts.io.FiberRef set
53
+ */
54
+ function set(a, __tsplusTrace) {
55
+ return fiberRef => {
56
+ return modify_1(() => [undefined, a], __tsplusTrace)(fiberRef);
57
+ };
58
+ }
59
+ /**
60
+ * @tsplus getter fncts.io.FiberRef get
61
+ */
62
+ function get_1(fiberRef, __tsplusTrace) {
63
+ return modify_1(a => [a, a], __tsplusTrace)(fiberRef);
64
+ }
65
+ /**
66
+ * @tsplus pipeable fncts.io.FiberRef getAndSet
67
+ */
68
+ function getAndSet(a, __tsplusTrace) {
69
+ return fiberRef => {
70
+ return modify_1(v => [v, a], __tsplusTrace)(fiberRef);
71
+ };
72
+ }
73
+ /**
74
+ * @tsplus pipeable fncts.io.FiberRef getAndUpdate
75
+ */
76
+ function getAndUpdate(f, __tsplusTrace) {
77
+ return fiberRef => {
78
+ return modify_1(a => [a, f(a)], __tsplusTrace)(fiberRef);
79
+ };
80
+ }
81
+ /**
82
+ * @tsplus pipeable fncts.io.FiberRef getAndUpdateJust
83
+ */
84
+ function getAndUpdateJust(f, __tsplusTrace) {
85
+ return fiberRef => {
86
+ return modify_1(a => [a, tsplus_module_2.getOrElse(() => a)(f(a))], __tsplusTrace)(fiberRef);
87
+ };
88
+ }
89
+ /**
90
+ * Returns an `IO` that runs with `value` bound to the current fiber.
91
+ *
92
+ * Guarantees that fiber data is properly restored via `bracket`.
93
+ *
94
+ * @tsplus fluent fncts.io.FiberRef locally
95
+ */
96
+ function locally_1(fiberRef, value, __tsplusTrace) {
97
+ return use => tsplus_module_1.withFiberRuntime(fiberState => {
98
+ const oldValue = fiberState.getFiberRef(fiberRef);
99
+ fiberState.setFiberRef(fiberRef, value);
100
+ return tsplus_module_3.ensuring(tsplus_module_1.succeed(() => fiberState.setFiberRef(fiberRef, oldValue), __tsplusTrace), __tsplusTrace)(use);
101
+ }, __tsplusTrace);
102
+ }
103
+ /**
104
+ * Returns an `IO` that runs with `f` applied to the current fiber.
105
+ *
106
+ * Guarantees that fiber data is properly restored via `bracket`.
107
+ *
108
+ * @tsplus fluent fncts.io.FiberRef locallyWith
109
+ */
110
+ function locallyWith(self, f, __tsplusTrace) {
111
+ return use => getWith_1(a => locally_1(self, f(a), __tsplusTrace)(use), __tsplusTrace)(self);
112
+ }
113
+ /**
114
+ * @tsplus pipeable fncts.io.FiberRef getWith
115
+ */
116
+ function getWith_1(f, __tsplusTrace) {
117
+ return fiberRef => {
118
+ return tsplus_module_1.flatMap(f, __tsplusTrace)(get_1(fiberRef, __tsplusTrace));
119
+ };
120
+ }
121
+ /**
122
+ * @tsplus getter fncts.io.FiberRef remove
123
+ */
124
+ function remove(self, __tsplusTrace) {
125
+ return tsplus_module_1.withFiberRuntime(fiberState => {
126
+ fiberState.deleteFiberRef(self);
127
+ return tsplus_module_1.unit;
128
+ }, __tsplusTrace);
129
+ }
130
+ //# sourceMappingURL=operations.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations.cjs","mappings":"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","names":["modify","get","locally","getWith","f","__tsplusTrace","self","tsplus_module_1","fiber","result","newValue","getFiberRef","setFiberRef","update","fiberRef","modify_1","a","undefined","set","getAndSet","v","getAndUpdate","getAndUpdateJust","tsplus_module_2","value","use","fiberState","oldValue","tsplus_module_3","locallyWith","getWith_1","locally_1","remove","deleteFiberRef"],"sourceRoot":"","sources":["../../_src/FiberRef/operations.ts"],"sourcesContent":[null]}
package/_cjs/FiberRef.cjs CHANGED
@@ -36,6 +36,17 @@ Object.keys(_definition).forEach(function (key) {
36
36
  }
37
37
  });
38
38
  });
39
+ var _operations = /*#__PURE__*/require("./FiberRef/operations.cjs");
40
+ Object.keys(_operations).forEach(function (key) {
41
+ if (key === "default" || key === "__esModule") return;
42
+ if (key in exports && exports[key] === _operations[key]) return;
43
+ Object.defineProperty(exports, key, {
44
+ enumerable: true,
45
+ get: function () {
46
+ return _operations[key];
47
+ }
48
+ });
49
+ });
39
50
  var _unsafe = /*#__PURE__*/require("./FiberRef/unsafe.cjs");
40
51
  Object.keys(_unsafe).forEach(function (key) {
41
52
  if (key === "default" || key === "__esModule") return;
@@ -1 +1 @@
1
- {"version":3,"file":"FiberRef.cjs","mappings":";;;;;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AAGA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA","names":[],"sourceRoot":"","sources":["../_src/FiberRef.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"FiberRef.cjs","mappings":";;;;;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AAGA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA","names":[],"sourceRoot":"","sources":["../_src/FiberRef.ts"],"sourcesContent":[null]}