effect 3.19.19 → 3.20.1

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 (67) hide show
  1. package/dist/cjs/Data.js.map +1 -1
  2. package/dist/cjs/Equal.js +3 -0
  3. package/dist/cjs/Equal.js.map +1 -1
  4. package/dist/cjs/Layer.js +1 -1
  5. package/dist/cjs/ParseResult.js +4 -5
  6. package/dist/cjs/ParseResult.js.map +1 -1
  7. package/dist/cjs/Scheduler.js +78 -72
  8. package/dist/cjs/Scheduler.js.map +1 -1
  9. package/dist/cjs/SchemaAST.js +4 -0
  10. package/dist/cjs/SchemaAST.js.map +1 -1
  11. package/dist/cjs/internal/cause.js +28 -29
  12. package/dist/cjs/internal/cause.js.map +1 -1
  13. package/dist/cjs/internal/effect/circular.js +2 -2
  14. package/dist/cjs/internal/effect/circular.js.map +1 -1
  15. package/dist/cjs/internal/fiberRuntime.js +4 -4
  16. package/dist/cjs/internal/fiberRuntime.js.map +1 -1
  17. package/dist/cjs/internal/logger.js +1 -3
  18. package/dist/cjs/internal/logger.js.map +1 -1
  19. package/dist/cjs/internal/version.js +1 -1
  20. package/dist/cjs/internal/version.js.map +1 -1
  21. package/dist/dts/Cron.d.ts +1 -1
  22. package/dist/dts/Data.d.ts +11 -11
  23. package/dist/dts/Data.d.ts.map +1 -1
  24. package/dist/dts/Equal.d.ts.map +1 -1
  25. package/dist/dts/Graph.d.ts +1 -1
  26. package/dist/dts/Layer.d.ts +1 -1
  27. package/dist/dts/ParseResult.d.ts +1 -1
  28. package/dist/dts/ParseResult.d.ts.map +1 -1
  29. package/dist/dts/Scheduler.d.ts +22 -19
  30. package/dist/dts/Scheduler.d.ts.map +1 -1
  31. package/dist/dts/SchemaAST.d.ts.map +1 -1
  32. package/dist/dts/Types.d.ts +7 -0
  33. package/dist/dts/Types.d.ts.map +1 -1
  34. package/dist/dts/internal/fiberRuntime.d.ts.map +1 -1
  35. package/dist/esm/Data.js.map +1 -1
  36. package/dist/esm/Equal.js +3 -0
  37. package/dist/esm/Equal.js.map +1 -1
  38. package/dist/esm/Layer.js +1 -1
  39. package/dist/esm/ParseResult.js +4 -5
  40. package/dist/esm/ParseResult.js.map +1 -1
  41. package/dist/esm/Scheduler.js +76 -71
  42. package/dist/esm/Scheduler.js.map +1 -1
  43. package/dist/esm/SchemaAST.js +4 -0
  44. package/dist/esm/SchemaAST.js.map +1 -1
  45. package/dist/esm/internal/cause.js +26 -27
  46. package/dist/esm/internal/cause.js.map +1 -1
  47. package/dist/esm/internal/effect/circular.js +2 -2
  48. package/dist/esm/internal/effect/circular.js.map +1 -1
  49. package/dist/esm/internal/fiberRuntime.js +4 -4
  50. package/dist/esm/internal/fiberRuntime.js.map +1 -1
  51. package/dist/esm/internal/logger.js +1 -3
  52. package/dist/esm/internal/logger.js.map +1 -1
  53. package/dist/esm/internal/version.js +1 -1
  54. package/dist/esm/internal/version.js.map +1 -1
  55. package/package.json +1 -1
  56. package/src/Data.ts +7 -13
  57. package/src/Equal.ts +3 -0
  58. package/src/Layer.ts +1 -1
  59. package/src/ParseResult.ts +4 -5
  60. package/src/Scheduler.ts +84 -75
  61. package/src/SchemaAST.ts +4 -0
  62. package/src/Types.ts +8 -0
  63. package/src/internal/cause.ts +40 -41
  64. package/src/internal/effect/circular.ts +13 -9
  65. package/src/internal/fiberRuntime.ts +26 -13
  66. package/src/internal/logger.ts +1 -1
  67. package/src/internal/version.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Data.js","names":["core","internal","StructuralPrototype","Predicate","struct","unsafeStruct","as","Object","setPrototypeOf","tuple","unsafeArray","array","slice","ArrayProto","_case","args","undefined","create","case","tagged","tag","value","_tag","Class","Structural","TaggedClass","Base","taggedEnum","Proxy","get","_target","_receiver","isTagged","taggedMatch","arguments","length","cases","Error","plainArgsSymbol","Symbol","for","O","BaseEffectError","YieldableError","constructor","message","cause","assign","defineProperty","enumerable","toJSON","TaggedError","prototype","name"],"sources":["../../src/Data.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Data.js","names":["core","internal","StructuralPrototype","Predicate","struct","unsafeStruct","as","Object","setPrototypeOf","tuple","unsafeArray","array","slice","ArrayProto","_case","args","undefined","create","case","tagged","tag","value","_tag","Class","Structural","TaggedClass","Base","taggedEnum","Proxy","get","_target","_receiver","isTagged","taggedMatch","arguments","length","cases","Error","plainArgsSymbol","Symbol","for","O","BaseEffectError","YieldableError","constructor","message","cause","assign","defineProperty","enumerable","toJSON","TaggedError","prototype","name"],"sources":["../../src/Data.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/esm/Equal.js CHANGED
@@ -37,6 +37,9 @@ function compareBoth(self, that) {
37
37
  }
38
38
  }
39
39
  if (structuralRegionState.enabled) {
40
+ if (self === null || that === null) {
41
+ return false;
42
+ }
40
43
  if (Array.isArray(self) && Array.isArray(that)) {
41
44
  return self.length === that.length && self.every((v, i) => compareBoth(v, that[i]));
42
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Equal.js","names":["Hash","hasProperty","structuralRegionState","symbol","Symbol","for","equals","arguments","length","self","compareBoth","that","selfType","isEqual","hash","enabled","tester","Date","t1","getTime","t2","Number","isNaN","URL","href","Array","isArray","every","v","i","Object","getPrototypeOf","prototype","keysSelf","keys","keysThat","key","u","equivalence"],"sources":["../../src/Equal.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Equal.js","names":["Hash","hasProperty","structuralRegionState","symbol","Symbol","for","equals","arguments","length","self","compareBoth","that","selfType","isEqual","hash","enabled","tester","Date","t1","getTime","t2","Number","isNaN","URL","href","Array","isArray","every","v","i","Object","getPrototypeOf","prototype","keysSelf","keys","keysThat","key","u","equivalence"],"sources":["../../src/Equal.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/esm/Layer.js CHANGED
@@ -379,7 +379,7 @@ export const scope = internal.scope;
379
379
  */
380
380
  export const scoped = internal.scoped;
381
381
  /**
382
- * Constructs a layer from the specified scoped effect.
382
+ * Constructs a layer from the specified scoped effect, discarding its output.
383
383
  *
384
384
  * @since 2.0.0
385
385
  * @category constructors
@@ -758,15 +758,15 @@ const go = (ast, isDecoding) => {
758
758
  // handle post rest elements
759
759
  // ---------------------------------------------
760
760
  for (let j = 0; j < tail.length; j++) {
761
- i += j;
762
- if (len < i + 1) {
761
+ const index = i + j;
762
+ if (len < index + 1) {
763
763
  continue;
764
764
  } else {
765
- const te = tail[j](input[i], options);
765
+ const te = tail[j](input[index], options);
766
766
  if (isEither(te)) {
767
767
  if (Either.isLeft(te)) {
768
768
  // the input element is present but is not valid
769
- const e = new Pointer(i, input, te.left);
769
+ const e = new Pointer(index, input, te.left);
770
770
  if (allErrors) {
771
771
  es.push([stepKey++, e]);
772
772
  continue;
@@ -777,7 +777,6 @@ const go = (ast, isDecoding) => {
777
777
  output.push([stepKey++, te.right]);
778
778
  } else {
779
779
  const nk = stepKey++;
780
- const index = i;
781
780
  if (!queue) {
782
781
  queue = [];
783
782
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ParseResult.js","names":["Arr","Cause","TaggedError","Effect","Either","Exit","dual","globalValue","Inspectable","util_","Option","Predicate","Scheduler","AST","Pointer","path","actual","issue","_tag","constructor","Unexpected","message","Missing","ast","undefined","Composite","issues","output","Refinement","kind","Transformation","Type","Forbidden","ParseErrorTypeId","Symbol","for","isParseError","u","hasProperty","ParseError","toString","TreeFormatter","formatIssueSync","toJSON","_id","NodeInspectSymbol","parseError","succeed","right","fail","left","_try","try","fromOption","isEither","flatMap","self","f","match","onLeft","onRight","map","mapError","mapLeft","eitherOrUndefined","mapBoth","options","onFailure","onSuccess","orElse","catchAll","mergeInternalOptions","overrideOptions","isNumber","getEither","isDecoding","parser","goMemo","getSync","input","getOrThrowWith","getOption","getRight","getEffect","isEffectAllowed","decodeUnknownSync","schema","decodeUnknownOption","decodeUnknownEither","decodeUnknownPromise","decodeUnknown","runPromise","encodeUnknownSync","encodeUnknownOption","encodeUnknownEither","encodeUnknownPromise","encodeUnknown","decodeSync","decodeOption","decodeEither","decodePromise","decode","validateSync","typeAST","validateOption","validateEither","validatePromise","validate","is","isRight","exact","asserts","result","isLeft","encodeSync","encodeOption","encodeEither","encodePromise","encode","decodeMemoMap","WeakMap","encodeMemoMap","memoMap","memo","get","raw","go","parseOptionsAnnotation","getParseOptionsAnnotation","parserWithOptions","isSome","i","value","decodingFallbackAnnotation","getDecodingFallbackAnnotation","handleForbidden","set","getConcurrency","getOrUndefined","getConcurrencyAnnotation","getBatching","getBatchingAnnotation","from","defaultParseOption","allErrors","errors","ef","hasStableFilter","isComposite","filter","onNone","onSome","ep","a","to","dropRightRefinement","transform","getFinalTransformation","transformation","e","i2","parse","typeParameters","fromRefinement","literal","symbol","isUndefined","isNever","isString","isBoolean","isBigInt","isSymbol","isObject","enums","some","_","regex","getTemplateLiteralRegExp","test","elements","type","rest","annotatedAST","requiredTypes","isOptional","length","concat","slice","requiredLen","expectedIndexes","join","concurrency","batching","isArray","es","stepKey","len","push","queue","te","sortByIndex","nk","index","either","t","void","isNonEmptyReadonlyArray","head","tail","j","computeResult","isNonEmptyArray","cqueue","suspend","state","copy","forEach","discard","propertySignatures","indexSignatures","isNotNullable","expectedKeysMap","expectedKeys","ps","name","parameter","expectedAST","Union","make","key","UniqueSymbol","Literal","expected","isRecord","onExcessPropertyError","onExcessProperty","onExcessPropertyPreserve","inputKeys","Reflect","ownKeys","String","isExact","hasKey","Object","prototype","hasOwnProperty","call","indexSignature","keys","getKeysForIndexSignature","keu","vpr","tv","propertyOrder","indexOf","out","assign","searchTree","getSearchTree","types","ownKeysLen","astTypesLen","Map","candidates","isRecordOrArray","buckets","literals","literalsUnion","errorAst","TypeLiteral","PropertySignature","fakePropertySignature","otherwise","candidate","pr","finalResult","memoizeThunk","refinement","getLiterals","annotation","getSurrogateAnnotation","propertySignature","encodedAST","isLiteral","element","members","member","tags","hash","isRefinement","effect","scheduler","SyncScheduler","fiber","runFork","flush","exit","unsafePoll","isSuccess","cause","isFailType","error","pretty","compare","b","sort","pst","propertySignatureTransformations","o","none","makeTree","forest","formatIssue","formatTree","drawTree","getOrThrow","runSync","formatError","formatErrorSync","tree","draw","indentation","r","isLast","formatTransformationKind","formatRefinementKind","getAnnotated","Either_void","getCurrentMessage","pipe","getMessageAnnotation","messageAnnotation","union","override","isEffect","createParseIssueGuard","tag","isTransformation","getMessage","currentMessage","useInnerMessage","getParseIssueTitleAnnotation","flatMapNullable","getRefinementExpected","getDescriptionAnnotation","getTitleAnnotation","getAutoTitleAnnotation","getIdentifierAnnotation","getOrElse","getDefaultTypeMessage","formatUnknown","formatTypeMessage","getParseIssueTitle","formatForbiddenMessage","formatUnexpectedMessage","formatMissingMessage","missingMessageAnnotation","getMissingMessageAnnotation","formatPath","parseIssueTitle","isNonEmpty","makeArrayFormatterIssue","ArrayFormatter","getArrayFormatterIssues","parentTag","flatten"],"sources":["../../src/ParseResult.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ParseResult.js","names":["Arr","Cause","TaggedError","Effect","Either","Exit","dual","globalValue","Inspectable","util_","Option","Predicate","Scheduler","AST","Pointer","path","actual","issue","_tag","constructor","Unexpected","message","Missing","ast","undefined","Composite","issues","output","Refinement","kind","Transformation","Type","Forbidden","ParseErrorTypeId","Symbol","for","isParseError","u","hasProperty","ParseError","toString","TreeFormatter","formatIssueSync","toJSON","_id","NodeInspectSymbol","parseError","succeed","right","fail","left","_try","try","fromOption","isEither","flatMap","self","f","match","onLeft","onRight","map","mapError","mapLeft","eitherOrUndefined","mapBoth","options","onFailure","onSuccess","orElse","catchAll","mergeInternalOptions","overrideOptions","isNumber","getEither","isDecoding","parser","goMemo","getSync","input","getOrThrowWith","getOption","getRight","getEffect","isEffectAllowed","decodeUnknownSync","schema","decodeUnknownOption","decodeUnknownEither","decodeUnknownPromise","decodeUnknown","runPromise","encodeUnknownSync","encodeUnknownOption","encodeUnknownEither","encodeUnknownPromise","encodeUnknown","decodeSync","decodeOption","decodeEither","decodePromise","decode","validateSync","typeAST","validateOption","validateEither","validatePromise","validate","is","isRight","exact","asserts","result","isLeft","encodeSync","encodeOption","encodeEither","encodePromise","encode","decodeMemoMap","WeakMap","encodeMemoMap","memoMap","memo","get","raw","go","parseOptionsAnnotation","getParseOptionsAnnotation","parserWithOptions","isSome","i","value","decodingFallbackAnnotation","getDecodingFallbackAnnotation","handleForbidden","set","getConcurrency","getOrUndefined","getConcurrencyAnnotation","getBatching","getBatchingAnnotation","from","defaultParseOption","allErrors","errors","ef","hasStableFilter","isComposite","filter","onNone","onSome","ep","a","to","dropRightRefinement","transform","getFinalTransformation","transformation","e","i2","parse","typeParameters","fromRefinement","literal","symbol","isUndefined","isNever","isString","isBoolean","isBigInt","isSymbol","isObject","enums","some","_","regex","getTemplateLiteralRegExp","test","elements","type","rest","annotatedAST","requiredTypes","isOptional","length","concat","slice","requiredLen","expectedIndexes","join","concurrency","batching","isArray","es","stepKey","len","push","queue","te","sortByIndex","nk","index","either","t","void","isNonEmptyReadonlyArray","head","tail","j","computeResult","isNonEmptyArray","cqueue","suspend","state","copy","forEach","discard","propertySignatures","indexSignatures","isNotNullable","expectedKeysMap","expectedKeys","ps","name","parameter","expectedAST","Union","make","key","UniqueSymbol","Literal","expected","isRecord","onExcessPropertyError","onExcessProperty","onExcessPropertyPreserve","inputKeys","Reflect","ownKeys","String","isExact","hasKey","Object","prototype","hasOwnProperty","call","indexSignature","keys","getKeysForIndexSignature","keu","vpr","tv","propertyOrder","indexOf","out","assign","searchTree","getSearchTree","types","ownKeysLen","astTypesLen","Map","candidates","isRecordOrArray","buckets","literals","literalsUnion","errorAst","TypeLiteral","PropertySignature","fakePropertySignature","otherwise","candidate","pr","finalResult","memoizeThunk","refinement","getLiterals","annotation","getSurrogateAnnotation","propertySignature","encodedAST","isLiteral","element","members","member","tags","hash","isRefinement","effect","scheduler","SyncScheduler","fiber","runFork","flush","exit","unsafePoll","isSuccess","cause","isFailType","error","pretty","compare","b","sort","pst","propertySignatureTransformations","o","none","makeTree","forest","formatIssue","formatTree","drawTree","getOrThrow","runSync","formatError","formatErrorSync","tree","draw","indentation","r","isLast","formatTransformationKind","formatRefinementKind","getAnnotated","Either_void","getCurrentMessage","pipe","getMessageAnnotation","messageAnnotation","union","override","isEffect","createParseIssueGuard","tag","isTransformation","getMessage","currentMessage","useInnerMessage","getParseIssueTitleAnnotation","flatMapNullable","getRefinementExpected","getDescriptionAnnotation","getTitleAnnotation","getAutoTitleAnnotation","getIdentifierAnnotation","getOrElse","getDefaultTypeMessage","formatUnknown","formatTypeMessage","getParseIssueTitle","formatForbiddenMessage","formatUnexpectedMessage","formatMissingMessage","missingMessageAnnotation","getMissingMessageAnnotation","formatPath","parseIssueTitle","isNonEmpty","makeArrayFormatterIssue","ArrayFormatter","getArrayFormatterIssues","parentTag","flatten"],"sources":["../../src/ParseResult.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -4,6 +4,61 @@
4
4
  import { dual } from "./Function.js";
5
5
  import { globalValue } from "./GlobalValue.js";
6
6
  import * as core from "./internal/core.js";
7
+ /**
8
+ * @since 3.20.0
9
+ * @category models
10
+ */
11
+ export class SchedulerRunner {
12
+ scheduleDrain;
13
+ running = false;
14
+ tasks = /*#__PURE__*/new PriorityBuckets();
15
+ constructor(scheduleDrain) {
16
+ this.scheduleDrain = scheduleDrain;
17
+ }
18
+ starveInternal = depth => {
19
+ const tasks = this.tasks.buckets;
20
+ this.tasks.buckets = [];
21
+ for (const [_, toRun] of tasks) {
22
+ for (let i = 0; i < toRun.length; i++) {
23
+ toRun[i]();
24
+ }
25
+ }
26
+ if (this.tasks.buckets.length === 0) {
27
+ this.running = false;
28
+ } else {
29
+ this.starve(depth);
30
+ }
31
+ };
32
+ starve(depth = 0) {
33
+ this.scheduleDrain(depth, this.starveInternal);
34
+ }
35
+ scheduleTask(task, priority) {
36
+ this.tasks.scheduleTask(task, priority);
37
+ if (!this.running) {
38
+ this.running = true;
39
+ this.starve();
40
+ }
41
+ }
42
+ /**
43
+ * @since 3.20.0
44
+ * @category constructors
45
+ */
46
+ static cached(scheduleDrain) {
47
+ const fallback = new SchedulerRunner(scheduleDrain);
48
+ const runners = new WeakMap();
49
+ return fiber => {
50
+ if (fiber === undefined) {
51
+ return fallback;
52
+ }
53
+ let runner = runners.get(fiber);
54
+ if (runner === undefined) {
55
+ runner = new SchedulerRunner(scheduleDrain);
56
+ runners.set(fiber, runner);
57
+ }
58
+ return runner;
59
+ };
60
+ }
61
+ }
7
62
  /**
8
63
  * @since 2.0.0
9
64
  * @category utils
@@ -42,14 +97,13 @@ export class PriorityBuckets {
42
97
  */
43
98
  export class MixedScheduler {
44
99
  maxNextTickBeforeTimer;
45
- /**
46
- * @since 2.0.0
47
- */
48
- running = false;
49
- /**
50
- * @since 2.0.0
51
- */
52
- tasks = /*#__PURE__*/new PriorityBuckets();
100
+ getRunner = /*#__PURE__*/SchedulerRunner.cached((depth, drain) => {
101
+ if (depth >= this.maxNextTickBeforeTimer) {
102
+ setTimeout(() => drain(0), 0);
103
+ } else {
104
+ Promise.resolve(void 0).then(() => drain(depth + 1));
105
+ }
106
+ });
53
107
  constructor(
54
108
  /**
55
109
  * @since 2.0.0
@@ -57,33 +111,6 @@ export class MixedScheduler {
57
111
  maxNextTickBeforeTimer) {
58
112
  this.maxNextTickBeforeTimer = maxNextTickBeforeTimer;
59
113
  }
60
- /**
61
- * @since 2.0.0
62
- */
63
- starveInternal(depth) {
64
- const tasks = this.tasks.buckets;
65
- this.tasks.buckets = [];
66
- for (const [_, toRun] of tasks) {
67
- for (let i = 0; i < toRun.length; i++) {
68
- toRun[i]();
69
- }
70
- }
71
- if (this.tasks.buckets.length === 0) {
72
- this.running = false;
73
- } else {
74
- this.starve(depth);
75
- }
76
- }
77
- /**
78
- * @since 2.0.0
79
- */
80
- starve(depth = 0) {
81
- if (depth >= this.maxNextTickBeforeTimer) {
82
- setTimeout(() => this.starveInternal(0), 0);
83
- } else {
84
- Promise.resolve(void 0).then(() => this.starveInternal(depth + 1));
85
- }
86
- }
87
114
  /**
88
115
  * @since 2.0.0
89
116
  */
@@ -93,12 +120,8 @@ export class MixedScheduler {
93
120
  /**
94
121
  * @since 2.0.0
95
122
  */
96
- scheduleTask(task, priority) {
97
- this.tasks.scheduleTask(task, priority);
98
- if (!this.running) {
99
- this.running = true;
100
- this.starve();
101
- }
123
+ scheduleTask(task, priority, fiber) {
124
+ this.getRunner(fiber).scheduleTask(task, priority);
102
125
  }
103
126
  }
104
127
  /**
@@ -122,9 +145,9 @@ export class SyncScheduler {
122
145
  /**
123
146
  * @since 2.0.0
124
147
  */
125
- scheduleTask(task, priority) {
148
+ scheduleTask(task, priority, fiber) {
126
149
  if (this.deferred) {
127
- defaultScheduler.scheduleTask(task, priority);
150
+ defaultScheduler.scheduleTask(task, priority, fiber);
128
151
  } else {
129
152
  this.tasks.scheduleTask(task, priority);
130
153
  }
@@ -167,9 +190,9 @@ export class ControlledScheduler {
167
190
  /**
168
191
  * @since 2.0.0
169
192
  */
170
- scheduleTask(task, priority) {
193
+ scheduleTask(task, priority, fiber) {
171
194
  if (this.deferred) {
172
- defaultScheduler.scheduleTask(task, priority);
195
+ defaultScheduler.scheduleTask(task, priority, fiber);
173
196
  } else {
174
197
  this.tasks.scheduleTask(task, priority);
175
198
  }
@@ -209,16 +232,16 @@ export const makeMatrix = (...record) => {
209
232
  }
210
233
  return false;
211
234
  },
212
- scheduleTask(task, priority) {
235
+ scheduleTask(task, priority, fiber) {
213
236
  let scheduler = undefined;
214
237
  for (const i of index) {
215
238
  if (priority >= i[0]) {
216
239
  scheduler = i[1];
217
240
  } else {
218
- return (scheduler ?? defaultScheduler).scheduleTask(task, priority);
241
+ return (scheduler ?? defaultScheduler).scheduleTask(task, priority, fiber);
219
242
  }
220
243
  }
221
- return (scheduler ?? defaultScheduler).scheduleTask(task, priority);
244
+ return (scheduler ?? defaultScheduler).scheduleTask(task, priority, fiber);
222
245
  }
223
246
  };
224
247
  };
@@ -242,29 +265,11 @@ export const make = (scheduleTask, shouldYield = defaultShouldYield) => ({
242
265
  * @category constructors
243
266
  */
244
267
  export const makeBatched = (callback, shouldYield = defaultShouldYield) => {
245
- let running = false;
246
- const tasks = new PriorityBuckets();
247
- const starveInternal = () => {
248
- const tasksToRun = tasks.buckets;
249
- tasks.buckets = [];
250
- for (const [_, toRun] of tasksToRun) {
251
- for (let i = 0; i < toRun.length; i++) {
252
- toRun[i]();
253
- }
254
- }
255
- if (tasks.buckets.length === 0) {
256
- running = false;
257
- } else {
258
- starve();
259
- }
260
- };
261
- const starve = () => callback(starveInternal);
262
- return make((task, priority) => {
263
- tasks.scheduleTask(task, priority);
264
- if (!running) {
265
- running = true;
266
- starve();
267
- }
268
+ const getRunner = SchedulerRunner.cached((_, drain) => {
269
+ callback(() => drain(0));
270
+ });
271
+ return make((task, priority, fiber) => {
272
+ getRunner(fiber).scheduleTask(task, priority);
268
273
  }, shouldYield);
269
274
  };
270
275
  /**