@effect/platform 0.33.1 → 0.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. package/Command/package.json +6 -0
  2. package/CommandExecutor/package.json +6 -0
  3. package/Effectify/package.json +6 -0
  4. package/Error/package.json +6 -0
  5. package/FileSystem/package.json +6 -0
  6. package/Http/App/package.json +6 -0
  7. package/Http/Body/package.json +6 -0
  8. package/Http/Client/package.json +6 -0
  9. package/Http/ClientError/package.json +6 -0
  10. package/Http/ClientRequest/package.json +6 -0
  11. package/Http/ClientResponse/package.json +6 -0
  12. package/Http/Etag/package.json +6 -0
  13. package/Http/FormData/package.json +6 -0
  14. package/Http/Headers/package.json +6 -0
  15. package/Http/IncomingMessage/package.json +6 -0
  16. package/Http/Method/package.json +6 -0
  17. package/Http/Middleware/package.json +6 -0
  18. package/Http/Platform/package.json +6 -0
  19. package/Http/Router/package.json +6 -0
  20. package/Http/Server/package.json +6 -0
  21. package/Http/ServerError/package.json +6 -0
  22. package/Http/ServerRequest/package.json +6 -0
  23. package/Http/ServerResponse/package.json +6 -0
  24. package/Http/UrlParams/package.json +6 -0
  25. package/HttpClient/package.json +6 -0
  26. package/HttpServer/package.json +6 -0
  27. package/KeyValueStore/package.json +6 -0
  28. package/Path/package.json +6 -0
  29. package/Runtime/package.json +6 -0
  30. package/Terminal/package.json +6 -0
  31. package/Transferable/package.json +6 -0
  32. package/Worker/package.json +6 -0
  33. package/WorkerError/package.json +6 -0
  34. package/WorkerRunner/package.json +6 -0
  35. package/dist/cjs/Command.js.map +1 -0
  36. package/dist/cjs/CommandExecutor.js.map +1 -0
  37. package/dist/cjs/Effectify.js.map +1 -0
  38. package/dist/cjs/Error.js.map +1 -0
  39. package/dist/cjs/FileSystem.js.map +1 -0
  40. package/dist/cjs/Http/App.js.map +1 -0
  41. package/dist/cjs/Http/Body.js.map +1 -0
  42. package/dist/cjs/Http/Client.js.map +1 -0
  43. package/dist/cjs/Http/ClientError.js.map +1 -0
  44. package/dist/cjs/Http/ClientRequest.js.map +1 -0
  45. package/dist/cjs/Http/ClientResponse.js.map +1 -0
  46. package/dist/cjs/Http/Etag.js.map +1 -0
  47. package/dist/cjs/Http/FormData.js.map +1 -0
  48. package/dist/cjs/Http/Headers.js.map +1 -0
  49. package/dist/cjs/Http/IncomingMessage.js.map +1 -0
  50. package/dist/cjs/Http/Method.js.map +1 -0
  51. package/dist/cjs/Http/Middleware.js.map +1 -0
  52. package/{Http/Etag.js.map → dist/cjs/Http/Platform.js.map} +1 -1
  53. package/dist/cjs/Http/Router.js.map +1 -0
  54. package/dist/cjs/Http/Server.js.map +1 -0
  55. package/{Http/ClientError.js.map → dist/cjs/Http/ServerError.js.map} +1 -1
  56. package/dist/cjs/Http/ServerRequest.js.map +1 -0
  57. package/dist/cjs/Http/ServerResponse.js.map +1 -0
  58. package/dist/cjs/Http/UrlParams.js.map +1 -0
  59. package/dist/cjs/HttpClient.js.map +1 -0
  60. package/dist/cjs/HttpServer.js.map +1 -0
  61. package/dist/cjs/KeyValueStore.js.map +1 -0
  62. package/dist/cjs/Path.js.map +1 -0
  63. package/dist/cjs/Runtime.js.map +1 -0
  64. package/dist/cjs/Terminal.js.map +1 -0
  65. package/dist/cjs/Transferable.js +26 -0
  66. package/dist/cjs/Transferable.js.map +1 -0
  67. package/{Worker.js → dist/cjs/Worker.js} +16 -1
  68. package/dist/cjs/Worker.js.map +1 -0
  69. package/dist/cjs/WorkerError.js.map +1 -0
  70. package/{WorkerRunner.js → dist/cjs/WorkerRunner.js} +6 -1
  71. package/dist/cjs/WorkerRunner.js.map +1 -0
  72. package/dist/cjs/internal/command.js.map +1 -0
  73. package/dist/cjs/internal/commandExecutor.js.map +1 -0
  74. package/dist/cjs/internal/effectify.js.map +1 -0
  75. package/dist/cjs/internal/error.js.map +1 -0
  76. package/dist/cjs/internal/fileSystem.js.map +1 -0
  77. package/dist/cjs/internal/http/body.js.map +1 -0
  78. package/dist/cjs/internal/http/client.js.map +1 -0
  79. package/dist/cjs/internal/http/clientError.js.map +1 -0
  80. package/dist/cjs/internal/http/clientRequest.js.map +1 -0
  81. package/dist/cjs/internal/http/clientResponse.js.map +1 -0
  82. package/dist/cjs/internal/http/etag.js.map +1 -0
  83. package/dist/cjs/internal/http/formData.js.map +1 -0
  84. package/dist/cjs/internal/http/middleware.js.map +1 -0
  85. package/dist/cjs/internal/http/platform.js.map +1 -0
  86. package/dist/cjs/internal/http/router.js.map +1 -0
  87. package/dist/cjs/internal/http/server.js.map +1 -0
  88. package/dist/cjs/internal/http/serverError.js.map +1 -0
  89. package/dist/cjs/internal/http/serverRequest.js.map +1 -0
  90. package/dist/cjs/internal/http/serverResponse.js.map +1 -0
  91. package/dist/cjs/internal/keyValueStore.js.map +1 -0
  92. package/dist/cjs/internal/path.js.map +1 -0
  93. package/dist/cjs/internal/terminal.js.map +1 -0
  94. package/{internal → dist/cjs/internal}/worker.js +63 -1
  95. package/dist/cjs/internal/worker.js.map +1 -0
  96. package/dist/cjs/internal/workerError.js.map +1 -0
  97. package/{internal → dist/cjs/internal}/workerRunner.js +42 -1
  98. package/dist/cjs/internal/workerRunner.js.map +1 -0
  99. package/dist/dts/Transferable.d.ts +21 -0
  100. package/dist/dts/Transferable.d.ts.map +1 -0
  101. package/dist/dts/Worker.d.ts +72 -0
  102. package/dist/dts/Worker.d.ts.map +1 -1
  103. package/dist/dts/WorkerRunner.d.ts +11 -0
  104. package/dist/dts/WorkerRunner.d.ts.map +1 -1
  105. package/dist/esm/Transferable.js +19 -0
  106. package/dist/esm/Transferable.js.map +1 -0
  107. package/dist/esm/Worker.js +15 -0
  108. package/dist/esm/Worker.js.map +1 -1
  109. package/dist/esm/WorkerRunner.js +5 -0
  110. package/dist/esm/WorkerRunner.js.map +1 -1
  111. package/dist/esm/internal/worker.js +59 -0
  112. package/dist/esm/internal/worker.js.map +1 -1
  113. package/dist/esm/internal/workerRunner.js +40 -0
  114. package/dist/esm/internal/workerRunner.js.map +1 -1
  115. package/package.json +44 -44
  116. package/src/Transferable.ts +28 -0
  117. package/src/Worker.ts +110 -0
  118. package/src/WorkerRunner.ts +26 -0
  119. package/src/internal/worker.ts +111 -0
  120. package/src/internal/workerRunner.ts +69 -0
  121. package/Command.js.map +0 -1
  122. package/CommandExecutor.js.map +0 -1
  123. package/Effectify.js.map +0 -1
  124. package/Error.js.map +0 -1
  125. package/FileSystem.js.map +0 -1
  126. package/Http/App.js.map +0 -1
  127. package/Http/Body.js.map +0 -1
  128. package/Http/Client.js.map +0 -1
  129. package/Http/ClientRequest.js.map +0 -1
  130. package/Http/ClientResponse.js.map +0 -1
  131. package/Http/FormData.js.map +0 -1
  132. package/Http/Headers.js.map +0 -1
  133. package/Http/IncomingMessage.js.map +0 -1
  134. package/Http/Method.js.map +0 -1
  135. package/Http/Middleware.js.map +0 -1
  136. package/Http/Platform.js.map +0 -1
  137. package/Http/Router.js.map +0 -1
  138. package/Http/Server.js.map +0 -1
  139. package/Http/ServerError.js.map +0 -1
  140. package/Http/ServerRequest.js.map +0 -1
  141. package/Http/ServerResponse.js.map +0 -1
  142. package/Http/UrlParams.js.map +0 -1
  143. package/HttpClient.js.map +0 -1
  144. package/HttpServer.js.map +0 -1
  145. package/KeyValueStore.js.map +0 -1
  146. package/Path.js.map +0 -1
  147. package/Runtime.js.map +0 -1
  148. package/Terminal.js.map +0 -1
  149. package/Worker.js.map +0 -1
  150. package/WorkerError.js.map +0 -1
  151. package/WorkerRunner.js.map +0 -1
  152. package/dist/dts/index.d.ts +0 -57
  153. package/dist/dts/index.d.ts.map +0 -1
  154. package/dist/esm/index.js +0 -57
  155. package/dist/esm/index.js.map +0 -1
  156. package/index.js +0 -60
  157. package/index.js.map +0 -1
  158. package/internal/command.js.map +0 -1
  159. package/internal/commandExecutor.js.map +0 -1
  160. package/internal/effectify.js.map +0 -1
  161. package/internal/error.js.map +0 -1
  162. package/internal/fileSystem.js.map +0 -1
  163. package/internal/http/body.js.map +0 -1
  164. package/internal/http/client.js.map +0 -1
  165. package/internal/http/clientError.js.map +0 -1
  166. package/internal/http/clientRequest.js.map +0 -1
  167. package/internal/http/clientResponse.js.map +0 -1
  168. package/internal/http/etag.js.map +0 -1
  169. package/internal/http/formData.js.map +0 -1
  170. package/internal/http/middleware.js.map +0 -1
  171. package/internal/http/platform.js.map +0 -1
  172. package/internal/http/router.js.map +0 -1
  173. package/internal/http/server.js.map +0 -1
  174. package/internal/http/serverError.js.map +0 -1
  175. package/internal/http/serverRequest.js.map +0 -1
  176. package/internal/http/serverResponse.js.map +0 -1
  177. package/internal/keyValueStore.js.map +0 -1
  178. package/internal/path.js.map +0 -1
  179. package/internal/terminal.js.map +0 -1
  180. package/internal/worker.js.map +0 -1
  181. package/internal/workerError.js.map +0 -1
  182. package/internal/workerRunner.js.map +0 -1
  183. package/src/index.ts +0 -69
  184. /package/{Command.js → dist/cjs/Command.js} +0 -0
  185. /package/{CommandExecutor.js → dist/cjs/CommandExecutor.js} +0 -0
  186. /package/{Effectify.js → dist/cjs/Effectify.js} +0 -0
  187. /package/{Error.js → dist/cjs/Error.js} +0 -0
  188. /package/{FileSystem.js → dist/cjs/FileSystem.js} +0 -0
  189. /package/{Http → dist/cjs/Http}/App.js +0 -0
  190. /package/{Http → dist/cjs/Http}/Body.js +0 -0
  191. /package/{Http → dist/cjs/Http}/Client.js +0 -0
  192. /package/{Http → dist/cjs/Http}/ClientError.js +0 -0
  193. /package/{Http → dist/cjs/Http}/ClientRequest.js +0 -0
  194. /package/{Http → dist/cjs/Http}/ClientResponse.js +0 -0
  195. /package/{Http → dist/cjs/Http}/Etag.js +0 -0
  196. /package/{Http → dist/cjs/Http}/FormData.js +0 -0
  197. /package/{Http → dist/cjs/Http}/Headers.js +0 -0
  198. /package/{Http → dist/cjs/Http}/IncomingMessage.js +0 -0
  199. /package/{Http → dist/cjs/Http}/Method.js +0 -0
  200. /package/{Http → dist/cjs/Http}/Middleware.js +0 -0
  201. /package/{Http → dist/cjs/Http}/Platform.js +0 -0
  202. /package/{Http → dist/cjs/Http}/Router.js +0 -0
  203. /package/{Http → dist/cjs/Http}/Server.js +0 -0
  204. /package/{Http → dist/cjs/Http}/ServerError.js +0 -0
  205. /package/{Http → dist/cjs/Http}/ServerRequest.js +0 -0
  206. /package/{Http → dist/cjs/Http}/ServerResponse.js +0 -0
  207. /package/{Http → dist/cjs/Http}/UrlParams.js +0 -0
  208. /package/{HttpClient.js → dist/cjs/HttpClient.js} +0 -0
  209. /package/{HttpServer.js → dist/cjs/HttpServer.js} +0 -0
  210. /package/{KeyValueStore.js → dist/cjs/KeyValueStore.js} +0 -0
  211. /package/{Path.js → dist/cjs/Path.js} +0 -0
  212. /package/{Runtime.js → dist/cjs/Runtime.js} +0 -0
  213. /package/{Terminal.js → dist/cjs/Terminal.js} +0 -0
  214. /package/{WorkerError.js → dist/cjs/WorkerError.js} +0 -0
  215. /package/{internal → dist/cjs/internal}/command.js +0 -0
  216. /package/{internal → dist/cjs/internal}/commandExecutor.js +0 -0
  217. /package/{internal → dist/cjs/internal}/effectify.js +0 -0
  218. /package/{internal → dist/cjs/internal}/error.js +0 -0
  219. /package/{internal → dist/cjs/internal}/fileSystem.js +0 -0
  220. /package/{internal → dist/cjs/internal}/http/body.js +0 -0
  221. /package/{internal → dist/cjs/internal}/http/client.js +0 -0
  222. /package/{internal → dist/cjs/internal}/http/clientError.js +0 -0
  223. /package/{internal → dist/cjs/internal}/http/clientRequest.js +0 -0
  224. /package/{internal → dist/cjs/internal}/http/clientResponse.js +0 -0
  225. /package/{internal → dist/cjs/internal}/http/etag.js +0 -0
  226. /package/{internal → dist/cjs/internal}/http/formData.js +0 -0
  227. /package/{internal → dist/cjs/internal}/http/middleware.js +0 -0
  228. /package/{internal → dist/cjs/internal}/http/platform.js +0 -0
  229. /package/{internal → dist/cjs/internal}/http/router.js +0 -0
  230. /package/{internal → dist/cjs/internal}/http/server.js +0 -0
  231. /package/{internal → dist/cjs/internal}/http/serverError.js +0 -0
  232. /package/{internal → dist/cjs/internal}/http/serverRequest.js +0 -0
  233. /package/{internal → dist/cjs/internal}/http/serverResponse.js +0 -0
  234. /package/{internal → dist/cjs/internal}/keyValueStore.js +0 -0
  235. /package/{internal → dist/cjs/internal}/path.js +0 -0
  236. /package/{internal → dist/cjs/internal}/terminal.js +0 -0
  237. /package/{internal → dist/cjs/internal}/workerError.js +0 -0
@@ -3,7 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.makePoolLayer = exports.makePool = exports.makeManager = exports.layerManager = exports.defaultQueue = exports.WorkerManagerTypeId = exports.WorkerManager = exports.PlatformWorkerTypeId = exports.PlatformWorker = void 0;
6
+ exports.makeSerialized = exports.makePoolSerializedLayer = exports.makePoolSerialized = exports.makePoolLayer = exports.makePool = exports.makeManager = exports.layerManager = exports.defaultQueue = exports.WorkerManagerTypeId = exports.WorkerManager = exports.PlatformWorkerTypeId = exports.PlatformWorker = void 0;
7
+ var Schema = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/schema/Schema"));
8
+ var Serializable = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/schema/Serializable"));
7
9
  var Cause = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Cause"));
8
10
  var Channel = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Channel"));
9
11
  var Chunk = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Chunk"));
@@ -17,6 +19,7 @@ var Layer = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/L
17
19
  var Pool = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Pool"));
18
20
  var Queue = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Queue"));
19
21
  var Stream = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Stream"));
22
+ var Transferable = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../Transferable.js"));
20
23
  function _getRequireWildcardCache(e) {
21
24
  if ("function" != typeof WeakMap) return null;
22
25
  var r = new WeakMap(),
@@ -180,5 +183,64 @@ const makePool = () => options => Effect.gen(function* (_) {
180
183
  /** @internal */
181
184
  exports.makePool = makePool;
182
185
  const makePoolLayer = managerLayer => (tag, options) => Layer.scoped(tag, makePool()(options)).pipe(Layer.provide(managerLayer));
186
+ /** @internal */
183
187
  exports.makePoolLayer = makePoolLayer;
188
+ const makeSerialized = options => Effect.gen(function* (_) {
189
+ const manager = yield* _(WorkerManager);
190
+ const backing = yield* _(manager.spawn({
191
+ ...options,
192
+ transfers(message) {
193
+ return Transferable.get(message);
194
+ }
195
+ }));
196
+ const execute = message => {
197
+ const parseSuccess = Schema.decode(Serializable.successSchema(message));
198
+ const parseFailure = Schema.decode(Serializable.failureSchema(message));
199
+ return (0, _Function.pipe)(Serializable.serialize(message), Stream.flatMap(message => backing.execute(message)), Stream.catchAll(error => Effect.flatMap(parseFailure(error), Effect.fail)), Stream.mapEffect(parseSuccess));
200
+ };
201
+ const executeEffect = message => {
202
+ const parseSuccess = Schema.decode(Serializable.successSchema(message));
203
+ const parseFailure = Schema.decode(Serializable.failureSchema(message));
204
+ return (0, _Function.pipe)(Serializable.serialize(message), Effect.flatMap(message => backing.executeEffect(message)), Effect.matchEffect({
205
+ onFailure: error => Effect.flatMap(parseFailure(error), Effect.fail),
206
+ onSuccess: parseSuccess
207
+ }));
208
+ };
209
+ return (0, _Function.identity)({
210
+ id: backing.id,
211
+ join: backing.join,
212
+ execute: execute,
213
+ executeEffect: executeEffect
214
+ });
215
+ });
216
+ /** @internal */
217
+ exports.makeSerialized = makeSerialized;
218
+ const makePoolSerialized = () => options => Effect.gen(function* (_) {
219
+ const manager = yield* _(WorkerManager);
220
+ const workers = new Set();
221
+ const acquire = (0, _Function.pipe)(makeSerialized(options), Effect.tap(worker => Effect.sync(() => workers.add(worker))), Effect.tap(worker => Effect.addFinalizer(() => Effect.sync(() => workers.delete(worker)))), options.onCreate ? Effect.tap(options.onCreate) : _Function.identity, Effect.provideService(WorkerManager, manager));
222
+ const backing = yield* _("timeToLive" in options ? Pool.makeWithTTL({
223
+ acquire,
224
+ min: options.minSize,
225
+ max: options.maxSize,
226
+ timeToLive: options.timeToLive
227
+ }) : Pool.make({
228
+ acquire,
229
+ size: options.size
230
+ }));
231
+ const pool = {
232
+ backing,
233
+ broadcast: message => Effect.forEach(workers, worker => worker.executeEffect(message), {
234
+ concurrency: "unbounded",
235
+ discard: true
236
+ }),
237
+ execute: message => Stream.unwrap(Effect.map(Effect.scoped(backing.get), worker => worker.execute(message))),
238
+ executeEffect: message => Effect.flatMap(Effect.scoped(backing.get), worker => worker.executeEffect(message))
239
+ };
240
+ return pool;
241
+ });
242
+ /** @internal */
243
+ exports.makePoolSerialized = makePoolSerialized;
244
+ const makePoolSerializedLayer = managerLayer => (tag, options) => Layer.scoped(tag, makePoolSerialized()(options)).pipe(Layer.provide(managerLayer));
245
+ exports.makePoolSerializedLayer = makePoolSerializedLayer;
184
246
  //# sourceMappingURL=worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker.js","names":["Schema","_interopRequireWildcard","require","Serializable","Cause","Channel","Chunk","Context","Deferred","Effect","Exit","Fiber","_Function","Layer","Pool","Queue","Stream","Transferable","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","defaultQueue","map","unbounded","queue","offer","id","item","take","shutdown","exports","PlatformWorkerTypeId","Symbol","for","PlatformWorker","Tag","WorkerManagerTypeId","WorkerManager","makeManager","gen","_","platform","idCounter","of","spawn","encode","permits","transfers","requestIdCounter","readyLatch","make","semaphore","makeSemaphore","requestMap","Map","outbound","addFinalizer","backing","zipRight","forEach","values","failCause","empty","discard","sync","clear","handleMessage","msg","suspend","complete","unit","response","succeed","length","fail","die","executeAcquire","request","tap","all","deferred","executeRelease","exit","release","delete","isInterrupted","ignore","send","execute","flatMap","acquireRelease","loop","match","onFailure","cause","isEmpty","onSuccess","value","write","fromChannel","executeEffect","acquireUseRelease","flatten","handleMessages","forever","forkScoped","postMessages","pipe","result","transferables","payload","catchAllCause","await","ensuring","fork","postMessagesFiber","join","joinAll","fiber","parallelFinalizers","layerManager","effect","makePool","options","manager","workers","Set","acquire","worker","add","onCreate","identity","makeWithTTL","min","minSize","max","maxSize","timeToLive","size","pool","broadcast","message","concurrency","unwrap","scoped","makePoolLayer","managerLayer","tag","provide","makeSerialized","parseSuccess","decode","successSchema","parseFailure","failureSchema","serialize","catchAll","error","mapEffect","matchEffect","makePoolSerialized","provideService","makePoolSerializedLayer"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workerError.js","names":["Data","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","WorkerErrorTypeId","exports","Symbol","for","WorkerError","reason","error","stack","struct","_tag"],"sources":["../../../src/internal/workerError.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,IAAA,gBAAAC,uBAAA,eAAAC,OAAA;AAAmC,SAAAC,yBAAAC,CAAA;EAAA,yBAAAC,OAAA;EAAA,IAAAC,CAAA,OAAAD,OAAA;IAAAE,CAAA,OAAAF,OAAA;EAAA,QAAAF,wBAAA,YAAAA,CAAAC,CAAA;IAAA,OAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA;EAAA,GAAAF,CAAA;AAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA;EAAA,KAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA;EAAA,aAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA;IAAAK,OAAA,EAAAL;EAAA;EAAA,IAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA;EAAA,IAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA;EAAA,IAAAQ,CAAA;MAAAC,SAAA;IAAA;IAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA;EAAA,SAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA;IAAA,IAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA;IAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA;EAAA;EAAA,OAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA;AAGnC;AACO,MAAMY,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,gBAAmCE,MAAM,CAACC,GAAG,CACzE,wCAAwC,CACP;AAEnC;AACO,MAAMC,WAAW,GAAGA,CACzBC,MAA0C,EAC1CC,KAAc,EACdC,KAAc,KAEd/B,IAAI,CAACgC,MAAM,CAAC;EACV,CAACR,iBAAiB,GAAGA,iBAAiB;EACtCS,IAAI,EAAE,aAAa;EACnBJ,MAAM;EACNC,KAAK;EACLC;CACD,CAAC;AAAAN,OAAA,CAAAG,WAAA,GAAAA,WAAA"}
@@ -3,15 +3,19 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.make = exports.PlatformRunnerTypeId = exports.PlatformRunner = void 0;
6
+ exports.makeSerialized = exports.make = exports.PlatformRunnerTypeId = exports.PlatformRunner = void 0;
7
+ var Schema = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/schema/Schema"));
8
+ var Serializable = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/schema/Serializable"));
7
9
  var Cause = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Cause"));
8
10
  var Context = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Context"));
9
11
  var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Effect"));
10
12
  var Either = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Either"));
11
13
  var Fiber = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Fiber"));
12
14
  var _Function = /*#__PURE__*/require("effect/Function");
15
+ var Predicate = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Predicate"));
13
16
  var Queue = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Queue"));
14
17
  var Stream = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Stream"));
18
+ var Transferable = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../Transferable.js"));
15
19
  function _getRequireWildcardCache(e) {
16
20
  if ("function" != typeof WeakMap) return null;
17
21
  var r = new WeakMap(),
@@ -82,5 +86,42 @@ const make = (process, options) => Effect.gen(function* (_) {
82
86
  discard: true
83
87
  }));
84
88
  });
89
+ /** @internal */
85
90
  exports.make = make;
91
+ const makeSerialized = (schema, handlers) => {
92
+ const parseRequest = Schema.decode(schema);
93
+ const effectTags = new Set();
94
+ return make(request => {
95
+ if (Predicate.hasProperty(request, "_tag") && effectTags.has(request._tag)) {
96
+ return Effect.flatMap(parseRequest(request), request => {
97
+ const handler = handlers[request._tag];
98
+ if (!handler) {
99
+ return Effect.dieMessage(`No handler for ${request._tag}`);
100
+ }
101
+ const encodeSuccess = Schema.encode(Serializable.successSchema(request));
102
+ return (0, _Function.pipe)(Effect.matchEffect(handler(request), {
103
+ onFailure: error => Effect.flatMap(Serializable.serializeFailure(request, error), Effect.fail),
104
+ onSuccess: encodeSuccess
105
+ }));
106
+ });
107
+ }
108
+ return Stream.flatMap(parseRequest(request), request => {
109
+ const handler = handlers[request._tag];
110
+ if (!handler) {
111
+ return Stream.dieMessage(`No handler for ${request._tag}`);
112
+ }
113
+ const encodeSuccess = Schema.encode(Serializable.successSchema(request));
114
+ const stream = handler(request);
115
+ if (Effect.isEffect(stream)) {
116
+ effectTags.add(request._tag);
117
+ }
118
+ return (0, _Function.pipe)(stream, Stream.catchAll(error => Effect.flatMap(Serializable.serializeFailure(request, error), Effect.fail)), Stream.mapEffect(encodeSuccess));
119
+ });
120
+ }, {
121
+ transfers(message) {
122
+ return Transferable.get(message);
123
+ }
124
+ });
125
+ };
126
+ exports.makeSerialized = makeSerialized;
86
127
  //# sourceMappingURL=workerRunner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workerRunner.js","names":["Schema","_interopRequireWildcard","require","Serializable","Cause","Context","Effect","Either","Fiber","_Function","Predicate","Queue","Stream","Transferable","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","PlatformRunnerTypeId","exports","Symbol","for","PlatformRunner","Tag","make","process","options","gen","_","platform","backing","start","fiberMap","Map","handleRequests","pipe","take","queue","tap","req","id","fiber","unit","interrupt","stream","effect","isEffect","matchCauseEffect","onFailure","cause","match","failureOrCause","onLeft","error","send","onRight","squash","onSuccess","data","transfers","undefined","payload","encode","item","runDrain","ensuring","sync","delete","fork","forever","all","join","concurrency","discard","makeSerialized","schema","handlers","parseRequest","decode","effectTags","Set","request","hasProperty","_tag","flatMap","handler","dieMessage","encodeSuccess","successSchema","matchEffect","serializeFailure","fail","add","catchAll","mapEffect","message"],"sources":["../../../src/internal/workerRunner.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ /**
5
+ * @since 1.0.0
6
+ * @category symbols
7
+ */
8
+ export declare const symbol: unique symbol;
9
+ /**
10
+ * @since 1.0.0
11
+ * @category models
12
+ */
13
+ export interface Transferable {
14
+ readonly [symbol]: () => ReadonlyArray<globalThis.Transferable>;
15
+ }
16
+ /**
17
+ * @since 1.0.0
18
+ * @category accessors
19
+ */
20
+ export declare const get: (u: unknown) => ReadonlyArray<globalThis.Transferable>;
21
+ //# sourceMappingURL=Transferable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Transferable.d.ts","sourceRoot":"","sources":["../../src/Transferable.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;GAGG;AACH,eAAO,MAAM,MAAM,eAA8C,CAAA;AAEjE;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,aAAa,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;CAChE;AAED;;;GAGG;AACH,eAAO,MAAM,GAAG,MAAO,OAAO,KAAG,cAAc,uBAAuB,CAKrE,CAAA"}
@@ -1,6 +1,9 @@
1
1
  /**
2
2
  * @since 1.0.0
3
3
  */
4
+ import type * as ParseResult from "@effect/schema/ParseResult";
5
+ import type * as Schema from "@effect/schema/Schema";
6
+ import type * as Serializable from "@effect/schema/Serializable";
4
7
  import type * as Context from "effect/Context";
5
8
  import type * as Duration from "effect/Duration";
6
9
  import type * as Effect from "effect/Effect";
@@ -172,4 +175,73 @@ export declare const makePool: <W>() => <I, E, O>(options: WorkerPool.Options<I,
172
175
  * @category constructors
173
176
  */
174
177
  export declare const makePoolLayer: <W>(managerLayer: Layer.Layer<never, never, WorkerManager>) => <Tag, I, E, O>(tag: Context.Tag<Tag, WorkerPool<I, E, O>>, options: WorkerPool.Options<I, W>) => Layer.Layer<never, never, Tag>;
178
+ /**
179
+ * @since 1.0.0
180
+ * @category models
181
+ */
182
+ export interface SerializedWorker<I extends Schema.TaggedRequest.Any> {
183
+ readonly id: number;
184
+ readonly join: Effect.Effect<never, WorkerError, never>;
185
+ readonly execute: <Req extends I>(message: Req) => Req extends Serializable.WithResult<infer _IE, infer E, infer _IA, infer A> ? Stream.Stream<never, E | WorkerError | ParseResult.ParseError, A> : never;
186
+ readonly executeEffect: <Req extends I>(message: Req) => Req extends Serializable.WithResult<infer _IE, infer E, infer _IA, infer A> ? Effect.Effect<never, E | WorkerError | ParseResult.ParseError, A> : never;
187
+ }
188
+ /**
189
+ * @since 1.0.0
190
+ * @category models
191
+ */
192
+ export declare namespace SerializedWorker {
193
+ /**
194
+ * @since 1.0.0
195
+ * @category models
196
+ */
197
+ interface Options<I, W = unknown> {
198
+ readonly spawn: (id: number) => W;
199
+ readonly permits?: number;
200
+ readonly queue?: WorkerQueue<I>;
201
+ }
202
+ }
203
+ /**
204
+ * @since 1.0.0
205
+ * @category models
206
+ */
207
+ export interface SerializedWorkerPool<I extends Schema.TaggedRequest.Any> {
208
+ readonly backing: Pool.Pool<WorkerError, SerializedWorker<I>>;
209
+ readonly broadcast: <Req extends I>(message: Req) => Req extends Serializable.WithResult<infer _IE, infer E, infer _IA, infer _A> ? Effect.Effect<never, E | WorkerError | ParseResult.ParseError, void> : never;
210
+ readonly execute: <Req extends I>(message: Req) => Req extends Serializable.WithResult<infer _IE, infer E, infer _IA, infer A> ? Stream.Stream<never, E | WorkerError | ParseResult.ParseError, A> : never;
211
+ readonly executeEffect: <Req extends I>(message: Req) => Req extends Serializable.WithResult<infer _IE, infer E, infer _IA, infer A> ? Effect.Effect<never, E | WorkerError | ParseResult.ParseError, A> : never;
212
+ }
213
+ /**
214
+ * @since 1.0.0
215
+ * @category models
216
+ */
217
+ export declare namespace SerializedWorkerPool {
218
+ /**
219
+ * @since 1.0.0
220
+ * @category models
221
+ */
222
+ type Options<I, W = unknown> = SerializedWorker.Options<I, W> & ({
223
+ readonly onCreate?: (worker: Worker<I, unknown, unknown>) => Effect.Effect<never, WorkerError, void>;
224
+ readonly size: number;
225
+ } | {
226
+ readonly onCreate?: (worker: Worker<I, unknown, unknown>) => Effect.Effect<never, WorkerError, void>;
227
+ readonly minSize: number;
228
+ readonly maxSize: number;
229
+ readonly timeToLive: Duration.DurationInput;
230
+ });
231
+ }
232
+ /**
233
+ * @since 1.0.0
234
+ * @category constructors
235
+ */
236
+ export declare const makeSerialized: <I extends Schema.TaggedRequest.Any, W = unknown>(options: SerializedWorker.Options<I, W>) => Effect.Effect<WorkerManager | Scope.Scope, WorkerError, SerializedWorker<I>>;
237
+ /**
238
+ * @since 1.0.0
239
+ * @category constructors
240
+ */
241
+ export declare const makePoolSerialized: <W>() => <I extends Schema.TaggedRequest.Any>(options: SerializedWorkerPool.Options<I, W>) => Effect.Effect<WorkerManager | Scope.Scope, never, SerializedWorkerPool<I>>;
242
+ /**
243
+ * @since 1.0.0
244
+ * @category layers
245
+ */
246
+ export declare const makePoolSerializedLayer: <W>(managerLayer: Layer.Layer<never, never, WorkerManager>) => <Tag, I extends Schema.TaggedRequest.Any>(tag: Context.Tag<Tag, SerializedWorkerPool<I>>, options: SerializedWorkerPool.Options<I, W>) => Layer.Layer<never, never, Tag>;
175
247
  //# sourceMappingURL=Worker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Worker.d.ts","sourceRoot":"","sources":["../../src/Worker.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAC9C,OAAO,KAAK,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,KAAK,IAAI,MAAM,aAAa,CAAA;AACxC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAE5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAEnD;;;GAGG;AACH,MAAM,WAAW,aAAa,CAAC,CAAC,EAAE,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAA;IAC/C,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,SAAS,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,CAAA;IAC1G,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;CACxD;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,WAAW,aAAa,CAAC;IACrC;;;OAGG;IACH,KAAY,OAAO,CAAC,CAAC,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CACrE;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,OAAO,MAAsC,CAAA;AAEhF;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,OAAO,oBAAoB,CAAA;AAE9D;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;IACrD,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;CACxG;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,cAAc,CAA2B,CAAA;AAElG;;;GAGG;AACH,MAAM,WAAW,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,CAAC,CAAA;IACvD,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,CAAC,CAAA;IAC1E,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,CAAC,CAAA;CACjF;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B;;;OAGG;IACH,UAAiB,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO;QACrC,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,CAAC,CAAA;QACjC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,OAAO,CAAA;QACzC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,aAAa,CAAC,OAAO,CAAC,CAAA;QAC3D,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;QACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;KAChC;IAED;;;OAGG;IACH,KAAY,OAAO,CAAC,CAAC,GAAG,OAAO,IAAI,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;IAE1G;;;OAGG;IACH,KAAY,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,IAC/B,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,GACjC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAC7B,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,GAChC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,GAClC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,CAAC,CAAA;CAC9C;AAED;;;GAGG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACzD,QAAQ,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,GAAG,WAAW,EAAE,IAAI,CAAC,CAAA;IAC/E,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,CAAC,CAAA;IAC1E,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,CAAC,CAAA;CACjF;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC;;;OAGG;IACH,KAAY,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,IAC9B,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,GACpB,CAAC;QACD,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,CAAA;QACpG,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KACtB,GAAG;QACF,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,CAAA;QACpG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;QACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;QACxB,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,aAAa,CAAA;KAC5C,CAAC,CAAA;CACL;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IAC1E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;CACrD;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,OAAO,MAAqC,CAAA;AAE9E;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,mBAAmB,CAAA;AAE5D;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,CAAC,mBAAmB,CAAC,EAAE,mBAAmB,CAAA;IACnD,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EACtB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KACvB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;CAC9D;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,aAAa,CAA0B,CAAA;AAE9F;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,KAAK,EAAE,aAAa,CAAwB,CAAA;AAEpG;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,EAAE,aAAa,CAAyB,CAAA;AAEpG;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EACtC,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,KAC9B,MAAM,CAAC,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAqB,CAAA;AAE/F;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,CAAC,CAAC,EAC5B,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,KACnD,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAChB,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAC1C,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,KAC9B,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAA0B,CAAA"}
1
+ {"version":3,"file":"Worker.d.ts","sourceRoot":"","sources":["../../src/Worker.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  /**
2
2
  * @since 1.0.0
3
3
  */
4
+ import type * as Schema from "@effect/schema/Schema";
5
+ import type * as Serializable from "@effect/schema/Serializable";
4
6
  import type * as Context from "effect/Context";
5
7
  import type * as Effect from "effect/Effect";
6
8
  import type * as Fiber from "effect/Fiber";
@@ -70,4 +72,13 @@ export declare namespace Runner {
70
72
  * @category constructors
71
73
  */
72
74
  export declare const make: <I, R, E, O>(process: (request: I) => Stream.Stream<R, E, O> | Effect.Effect<R, E, O>, options?: Runner.Options<O> | undefined) => Effect.Effect<Scope.Scope | R | PlatformRunner, WorkerError, never>;
75
+ /**
76
+ * @since 1.0.0
77
+ * @category constructors
78
+ */
79
+ export declare const makeSerialized: <I, A extends Schema.TaggedRequest.Any, Handlers extends {
80
+ readonly [K in A["_tag"]]: Extract<A, {
81
+ readonly _tag: K;
82
+ }> extends Serializable.SerializableWithResult<infer _IS, infer S, infer _IE, infer E, infer _IO, infer O> ? (_: S) => Stream.Stream<any, E, O> | Effect.Effect<any, E, O> : never;
83
+ }>(schema: Schema.Schema<I, A>, handlers: Handlers) => Effect.Effect<PlatformRunner | Scope.Scope | (ReturnType<Handlers[keyof Handlers]> extends Stream.Stream<infer R, infer _E, infer _A> ? R : never), WorkerError, never>;
73
84
  //# sourceMappingURL=WorkerRunner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WorkerRunner.d.ts","sourceRoot":"","sources":["../../src/WorkerRunner.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAC9C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAE5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAEnD;;;GAGG;AACH,MAAM,WAAW,aAAa,CAAC,CAAC,EAAE,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAA;IAC/C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IAChC,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,SAAS,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;CACrG;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,WAAW,aAAa,CAAC;IACrC;;;OAGG;IACH,KAAY,OAAO,CAAC,CAAC,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;CACxE;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,OAAO,MAAsC,CAAA;AAEhF;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,OAAO,oBAAoB,CAAA;AAE9D;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;IACrD,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;CACzF;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,cAAc,CAA2B,CAAA;AAElG;;;GAGG;AACH,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B;;;OAGG;IACH,UAAiB,OAAO,CAAC,CAAC;QACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,OAAO,CAAA;QACzC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,aAAa,CAAC,OAAO,CAAC,CAAA;KAC5D;CACF;AAED;;;GAGG;AACH,eAAO,MAAM,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAC5B,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACxE,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,KACpC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,GAAG,cAAc,EAAE,WAAW,EAAE,KAAK,CAAiB,CAAA"}
1
+ {"version":3,"file":"WorkerRunner.d.ts","sourceRoot":"","sources":["../../src/WorkerRunner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ /**
5
+ * @since 1.0.0
6
+ * @category symbols
7
+ */
8
+ export const symbol = /*#__PURE__*/Symbol.for("@effect/platform/Transferable");
9
+ /**
10
+ * @since 1.0.0
11
+ * @category accessors
12
+ */
13
+ export const get = u => {
14
+ if (typeof u === "object" && u !== null && symbol in u) {
15
+ return u[symbol]();
16
+ }
17
+ return [];
18
+ };
19
+ //# sourceMappingURL=Transferable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Transferable.js","names":["symbol","Symbol","for","get","u"],"sources":["../../src/Transferable.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAIA;;;;AAIA,OAAO,MAAMA,MAAM,gBAAGC,MAAM,CAACC,GAAG,CAAC,+BAA+B,CAAC;AAUjE;;;;AAIA,OAAO,MAAMC,GAAG,GAAIC,CAAU,IAA4C;EACxE,IAAI,OAAOA,CAAC,KAAK,QAAQ,IAAIA,CAAC,KAAK,IAAI,IAAIJ,MAAM,IAAII,CAAC,EAAE;IACtD,OAAQA,CAAkB,CAACJ,MAAM,CAAC,EAAE;EACtC;EACA,OAAO,EAAE;AACX,CAAC"}
@@ -39,4 +39,19 @@ export const makePool = internal.makePool;
39
39
  * @category constructors
40
40
  */
41
41
  export const makePoolLayer = internal.makePoolLayer;
42
+ /**
43
+ * @since 1.0.0
44
+ * @category constructors
45
+ */
46
+ export const makeSerialized = internal.makeSerialized;
47
+ /**
48
+ * @since 1.0.0
49
+ * @category constructors
50
+ */
51
+ export const makePoolSerialized = internal.makePoolSerialized;
52
+ /**
53
+ * @since 1.0.0
54
+ * @category layers
55
+ */
56
+ export const makePoolSerializedLayer = internal.makePoolSerializedLayer;
42
57
  //# sourceMappingURL=Worker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Worker.js","names":["internal","PlatformWorkerTypeId","PlatformWorker","WorkerManagerTypeId","WorkerManager","makeManager","layerManager","makePool","makePoolLayer"],"sources":["../../src/Worker.ts"],"sourcesContent":[null],"mappings":"AAYA,OAAO,KAAKA,QAAQ,MAAM,sBAAsB;AAyBhD;;;;AAIA,OAAO,MAAMC,oBAAoB,GAAkBD,QAAQ,CAACC,oBAAoB;AAiBhF;;;;AAIA,OAAO,MAAMC,cAAc,GAAgDF,QAAQ,CAACE,cAAc;AA2FlG;;;;AAIA,OAAO,MAAMC,mBAAmB,GAAkBH,QAAQ,CAACG,mBAAmB;AAmB9E;;;;AAIA,OAAO,MAAMC,aAAa,GAA8CJ,QAAQ,CAACI,aAAa;AAE9F;;;;AAIA,OAAO,MAAMC,WAAW,GAAwDL,QAAQ,CAACK,WAAW;AAEpG;;;;AAIA,OAAO,MAAMC,YAAY,GAAsDN,QAAQ,CAACM,YAAY;AAEpG;;;;AAIA,OAAO,MAAMC,QAAQ,GAEyDP,QAAQ,CAACO,QAAQ;AAE/F;;;;AAIA,OAAO,MAAMC,aAAa,GAKYR,QAAQ,CAACQ,aAAa"}
1
+ {"version":3,"file":"Worker.js","names":["internal","PlatformWorkerTypeId","PlatformWorker","WorkerManagerTypeId","WorkerManager","makeManager","layerManager","makePool","makePoolLayer","makeSerialized","makePoolSerialized","makePoolSerializedLayer"],"sources":["../../src/Worker.ts"],"sourcesContent":[null],"mappings":"AAeA,OAAO,KAAKA,QAAQ,MAAM,sBAAsB;AAyBhD;;;;AAIA,OAAO,MAAMC,oBAAoB,GAAkBD,QAAQ,CAACC,oBAAoB;AAiBhF;;;;AAIA,OAAO,MAAMC,cAAc,GAAgDF,QAAQ,CAACE,cAAc;AA2FlG;;;;AAIA,OAAO,MAAMC,mBAAmB,GAAkBH,QAAQ,CAACG,mBAAmB;AAmB9E;;;;AAIA,OAAO,MAAMC,aAAa,GAA8CJ,QAAQ,CAACI,aAAa;AAE9F;;;;AAIA,OAAO,MAAMC,WAAW,GAAwDL,QAAQ,CAACK,WAAW;AAEpG;;;;AAIA,OAAO,MAAMC,YAAY,GAAsDN,QAAQ,CAACM,YAAY;AAEpG;;;;AAIA,OAAO,MAAMC,QAAQ,GAEyDP,QAAQ,CAACO,QAAQ;AAE/F;;;;AAIA,OAAO,MAAMC,aAAa,GAKYR,QAAQ,CAACQ,aAAa;AAkF5D;;;;AAIA,OAAO,MAAMC,cAAc,GAEyDT,QAAQ,CAACS,cAAc;AAE3G;;;;AAIA,OAAO,MAAMC,kBAAkB,GAEmDV,QAAQ,CAACU,kBAAkB;AAE7G;;;;AAIA,OAAO,MAAMC,uBAAuB,GAKEX,QAAQ,CAACW,uBAAuB"}
@@ -14,4 +14,9 @@ export const PlatformRunner = internal.PlatformRunner;
14
14
  * @category constructors
15
15
  */
16
16
  export const make = internal.make;
17
+ /**
18
+ * @since 1.0.0
19
+ * @category constructors
20
+ */
21
+ export const makeSerialized = internal.makeSerialized;
17
22
  //# sourceMappingURL=WorkerRunner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WorkerRunner.js","names":["internal","PlatformRunnerTypeId","PlatformRunner","make"],"sources":["../../src/WorkerRunner.ts"],"sourcesContent":[null],"mappings":"AASA,OAAO,KAAKA,QAAQ,MAAM,4BAA4B;AAyBtD;;;;AAIA,OAAO,MAAMC,oBAAoB,GAAkBD,QAAQ,CAACC,oBAAoB;AAiBhF;;;;AAIA,OAAO,MAAMC,cAAc,GAAgDF,QAAQ,CAACE,cAAc;AAiBlG;;;;AAIA,OAAO,MAAMC,IAAI,GAG0DH,QAAQ,CAACG,IAAI"}
1
+ {"version":3,"file":"WorkerRunner.js","names":["internal","PlatformRunnerTypeId","PlatformRunner","make","makeSerialized"],"sources":["../../src/WorkerRunner.ts"],"sourcesContent":[null],"mappings":"AAWA,OAAO,KAAKA,QAAQ,MAAM,4BAA4B;AAyBtD;;;;AAIA,OAAO,MAAMC,oBAAoB,GAAkBD,QAAQ,CAACC,oBAAoB;AAiBhF;;;;AAIA,OAAO,MAAMC,cAAc,GAAgDF,QAAQ,CAACE,cAAc;AAiBlG;;;;AAIA,OAAO,MAAMC,IAAI,GAG0DH,QAAQ,CAACG,IAAI;AAExF;;;;AAIA,OAAO,MAAMC,cAAc,GAkBvBJ,QAAQ,CAACI,cAAc"}
@@ -1,3 +1,5 @@
1
+ import * as Schema from "@effect/schema/Schema";
2
+ import * as Serializable from "@effect/schema/Serializable";
1
3
  import * as Cause from "effect/Cause";
2
4
  import * as Channel from "effect/Channel";
3
5
  import * as Chunk from "effect/Chunk";
@@ -11,6 +13,7 @@ import * as Layer from "effect/Layer";
11
13
  import * as Pool from "effect/Pool";
12
14
  import * as Queue from "effect/Queue";
13
15
  import * as Stream from "effect/Stream";
16
+ import * as Transferable from "../Transferable.js";
14
17
  /** @internal */
15
18
  export const defaultQueue = () => Effect.map(Queue.unbounded(), queue => ({
16
19
  offer: (id, item) => Queue.offer(queue, [id, item]),
@@ -147,4 +150,60 @@ export const makePool = () => options => Effect.gen(function* (_) {
147
150
  });
148
151
  /** @internal */
149
152
  export const makePoolLayer = managerLayer => (tag, options) => Layer.scoped(tag, makePool()(options)).pipe(Layer.provide(managerLayer));
153
+ /** @internal */
154
+ export const makeSerialized = options => Effect.gen(function* (_) {
155
+ const manager = yield* _(WorkerManager);
156
+ const backing = yield* _(manager.spawn({
157
+ ...options,
158
+ transfers(message) {
159
+ return Transferable.get(message);
160
+ }
161
+ }));
162
+ const execute = message => {
163
+ const parseSuccess = Schema.decode(Serializable.successSchema(message));
164
+ const parseFailure = Schema.decode(Serializable.failureSchema(message));
165
+ return pipe(Serializable.serialize(message), Stream.flatMap(message => backing.execute(message)), Stream.catchAll(error => Effect.flatMap(parseFailure(error), Effect.fail)), Stream.mapEffect(parseSuccess));
166
+ };
167
+ const executeEffect = message => {
168
+ const parseSuccess = Schema.decode(Serializable.successSchema(message));
169
+ const parseFailure = Schema.decode(Serializable.failureSchema(message));
170
+ return pipe(Serializable.serialize(message), Effect.flatMap(message => backing.executeEffect(message)), Effect.matchEffect({
171
+ onFailure: error => Effect.flatMap(parseFailure(error), Effect.fail),
172
+ onSuccess: parseSuccess
173
+ }));
174
+ };
175
+ return identity({
176
+ id: backing.id,
177
+ join: backing.join,
178
+ execute: execute,
179
+ executeEffect: executeEffect
180
+ });
181
+ });
182
+ /** @internal */
183
+ export const makePoolSerialized = () => options => Effect.gen(function* (_) {
184
+ const manager = yield* _(WorkerManager);
185
+ const workers = new Set();
186
+ const acquire = pipe(makeSerialized(options), Effect.tap(worker => Effect.sync(() => workers.add(worker))), Effect.tap(worker => Effect.addFinalizer(() => Effect.sync(() => workers.delete(worker)))), options.onCreate ? Effect.tap(options.onCreate) : identity, Effect.provideService(WorkerManager, manager));
187
+ const backing = yield* _("timeToLive" in options ? Pool.makeWithTTL({
188
+ acquire,
189
+ min: options.minSize,
190
+ max: options.maxSize,
191
+ timeToLive: options.timeToLive
192
+ }) : Pool.make({
193
+ acquire,
194
+ size: options.size
195
+ }));
196
+ const pool = {
197
+ backing,
198
+ broadcast: message => Effect.forEach(workers, worker => worker.executeEffect(message), {
199
+ concurrency: "unbounded",
200
+ discard: true
201
+ }),
202
+ execute: message => Stream.unwrap(Effect.map(Effect.scoped(backing.get), worker => worker.execute(message))),
203
+ executeEffect: message => Effect.flatMap(Effect.scoped(backing.get), worker => worker.executeEffect(message))
204
+ };
205
+ return pool;
206
+ });
207
+ /** @internal */
208
+ export const makePoolSerializedLayer = managerLayer => (tag, options) => Layer.scoped(tag, makePoolSerialized()(options)).pipe(Layer.provide(managerLayer));
150
209
  //# sourceMappingURL=worker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","names":["Cause","Channel","Chunk","Context","Deferred","Effect","Exit","Fiber","identity","pipe","Layer","Pool","Queue","Stream","defaultQueue","map","unbounded","queue","offer","id","item","take","shutdown","PlatformWorkerTypeId","Symbol","for","PlatformWorker","Tag","WorkerManagerTypeId","WorkerManager","makeManager","gen","_","platform","idCounter","of","spawn","encode","permits","transfers","requestIdCounter","readyLatch","make","semaphore","makeSemaphore","requestMap","Map","outbound","addFinalizer","backing","zipRight","forEach","values","failCause","empty","discard","sync","clear","handleMessage","msg","suspend","complete","unit","response","get","succeed","length","fail","die","executeAcquire","request","tap","all","deferred","set","executeRelease","exit","release","delete","isInterrupted","ignore","send","execute","flatMap","acquireRelease","loop","match","onFailure","cause","isEmpty","onSuccess","value","write","fromChannel","executeEffect","acquireUseRelease","flatten","handleMessages","forever","forkScoped","postMessages","result","transferables","payload","catchAllCause","await","ensuring","fork","postMessagesFiber","join","joinAll","fiber","parallelFinalizers","layerManager","effect","makePool","options","manager","workers","Set","acquire","worker","add","onCreate","makeWithTTL","min","minSize","max","maxSize","timeToLive","size","pool","broadcast","message","concurrency","unwrap","scoped","makePoolLayer","managerLayer","tag","provide"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","names":["Schema","Serializable","Cause","Channel","Chunk","Context","Deferred","Effect","Exit","Fiber","identity","pipe","Layer","Pool","Queue","Stream","Transferable","defaultQueue","map","unbounded","queue","offer","id","item","take","shutdown","PlatformWorkerTypeId","Symbol","for","PlatformWorker","Tag","WorkerManagerTypeId","WorkerManager","makeManager","gen","_","platform","idCounter","of","spawn","encode","permits","transfers","requestIdCounter","readyLatch","make","semaphore","makeSemaphore","requestMap","Map","outbound","addFinalizer","backing","zipRight","forEach","values","failCause","empty","discard","sync","clear","handleMessage","msg","suspend","complete","unit","response","get","succeed","length","fail","die","executeAcquire","request","tap","all","deferred","set","executeRelease","exit","release","delete","isInterrupted","ignore","send","execute","flatMap","acquireRelease","loop","match","onFailure","cause","isEmpty","onSuccess","value","write","fromChannel","executeEffect","acquireUseRelease","flatten","handleMessages","forever","forkScoped","postMessages","result","transferables","payload","catchAllCause","await","ensuring","fork","postMessagesFiber","join","joinAll","fiber","parallelFinalizers","layerManager","effect","makePool","options","manager","workers","Set","acquire","worker","add","onCreate","makeWithTTL","min","minSize","max","maxSize","timeToLive","size","pool","broadcast","message","concurrency","unwrap","scoped","makePoolLayer","managerLayer","tag","provide","makeSerialized","parseSuccess","decode","successSchema","parseFailure","failureSchema","serialize","catchAll","error","mapEffect","matchEffect","makePoolSerialized","provideService","makePoolSerializedLayer"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"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"}