Tidy: Create JSMicroTask type alias, and use through public/MicroTask.h & CycleCollectedJSContext
Categories
(Core :: JavaScript Engine, task, P3)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox147 | --- | fixed |
People
(Reporter: mgaudet, Assigned: mgaudet)
References
(Blocks 1 open bug)
Details
Attachments
(3 files)
There's this awkward API problem in the SM microtask queue. Basically, we have classes of functions which can't handle a non-JS-originated Microtask (e.g. some MicrotaskRunnable stored as a PrivateValue). However, right now the signature can't express this constraint, because everything basically works on either MicroTask or UncopyableMicroTask.
We can, and should, fix this by instead having JSMicroTask or something similar as a top level type. This would be both a .toObject and a validation of the class; but then after we know it's a JSMicroTask we can express the limitations of the API at the type level instead.
| Assignee | ||
Updated•8 months ago
|
| Assignee | ||
Comment 1•8 months ago
|
||
Some broken patches that explain basically what I mean are here. These patches get the wrapping/unwrapping wrong, but generally are what I mean.
| Assignee | ||
Comment 2•7 months ago
|
||
Updated•7 months ago
|
| Assignee | ||
Comment 3•7 months ago
|
||
| Assignee | ||
Comment 4•7 months ago
|
||
Backed out for causing hazard bustages
Comment 9•7 months ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/583ecf7f7fb7
https://hg.mozilla.org/mozilla-central/rev/a3e43647574d
https://hg.mozilla.org/mozilla-central/rev/120d1351bd3d
| Assignee | ||
Updated•7 months ago
|
Updated•6 months ago
|
Description
•