@@ -2959,7 +2959,9 @@ a.setAttribute('href', 'https://example.com/'); // change the content attribute
2959
2959
<li>The <dfn data-x-href="https://tc39.es/ecma262/#sec-hasownproperty">HasOwnProperty</dfn> abstract operation</li>
2960
2960
<li>The <dfn data-x="js-HostCallJobCallback" data-x-href="https://tc39.es/ecma262/#sec-hostcalljobcallback">HostCallJobCallback</dfn> abstract operation</li>
2961
2961
<li>The <dfn data-x="js-HostEnqueueFinalizationRegistryCleanupJob" data-x-href="https://tc39.es/ecma262/#sec-host-cleanup-finalization-registry">HostEnqueueFinalizationRegistryCleanupJob</dfn> abstract operation</li>
2962
+ <li>The <dfn data-x="js-HostEnqueueGenericJob" data-x-href="https://tc39.es/ecma262/#sec-hostenqueuegenericjob">HostEnqueueGenericJob</dfn> abstract operation</li>
2962
2963
<li>The <dfn data-x="js-HostEnqueuePromiseJob" data-x-href="https://tc39.es/ecma262/#sec-hostenqueuepromisejob">HostEnqueuePromiseJob</dfn> abstract operation</li>
2964
+ <li>The <dfn data-x="js-HostEnqueueTimeoutJob" data-x-href="https://tc39.es/ecma262/#sec-hostenqueuetimeoutjob">HostEnqueueTimeoutJob</dfn> abstract operation</li>
2963
2965
<li>The <dfn data-x="js-HostEnsureCanAddPrivateElement" data-x-href="https://tc39.es/ecma262/#sec-hostensurecanaddprivateelement">HostEnsureCanAddPrivateElement</dfn> abstract operation</li>
2964
2966
<li>The <dfn data-x="js-HostEnsureCanCompileStrings" data-x-href="https://tc39.es/ecma262/#sec-hostensurecancompilestrings">HostEnsureCanCompileStrings</dfn> abstract operation</li>
2965
2967
<li>The <dfn data-x="js-HostLoadImportedModule" data-x-href="https://tc39.es/proposal-import-attributes/#sec-HostLoadImportedModule">HostLoadImportedModule</dfn> abstract operation</li>
@@ -3004,6 +3006,7 @@ a.setAttribute('href', 'https://example.com/'); // change the content attribute
3004
3006
<li>The <dfn data-x="js-abstract-equality" data-x-href="https://tc39.es/ecma262/#sec-islooselyequal">IsLooselyEqual</dfn> abstract operation</li>
3005
3007
<li>The <dfn data-x="js-strict-equality" data-x-href="https://tc39.es/ecma262/#sec-isstrictlyequal">IsStrictlyEqual</dfn> abstract operation</li>
3006
3008
<li>The <dfn data-x-href="https://tc39.es/ecma262/#sec-atomics-object"><code>Atomics</code></dfn> object</li>
3009
+ <li>The <dfn data-x-href="https://tc39.es/ecma262/#sec-atomics.waitasync"><code>Atomics.waitAsync</code></dfn> object</li>
3007
3010
<li>The <dfn data-x-href="https://tc39.es/ecma262/#sec-date-objects"><code>Date</code></dfn> class</li>
3008
3011
<li>The <dfn data-x-href="https://tc39.es/ecma262/#sec-finalization-registry-objects"><code>FinalizationRegistry</code></dfn> class</li>
3009
3012
<li>The <dfn data-x-href="https://tc39.es/ecma262/#sec-regexp-regular-expression-objects"><code>RegExp</code></dfn> class</li>
@@ -101068,6 +101071,23 @@ dictionary <dfn dictionary>PromiseRejectionEventInit</dfn> : <span>EventInit</sp
101068
101071
</li>
101069
101072
</ol>
101070
101073
101074
+ <h6 id="hostenqueuegenericjob"><dfn>HostEnqueueGenericJob</dfn>(<var>job</var>,
101075
+ <var>realm</var>)</h6>
101076
+
101077
+ <p>JavaScript contains an <span>implementation-defined</span> <span
101078
+ data-x="js-HostEnqueueGenericJob">HostEnqueueGenericJob</span>(<var>job</var>, <var>realm</var>)
101079
+ abstract operation to perform generic jobs in a particular realm (e.g., resolve promises resulting
101080
+ from <code>Atomics.waitAsync</code>). User agents must use the following implementation: <ref
101081
+ spec=JAVASCRIPT></p>
101082
+
101083
+ <ol>
101084
+ <li><p>Let <var>global</var> be <var>realm</var>'s <span data-x="concept-realm-global">global
101085
+ object</span>.</p></li>
101086
+
101087
+ <li><p><span>Queue a global task</span> on the <span>JavaScript engine task source</span> given
101088
+ <var>global</var> to perform <var>job</var>().</p></li>
101089
+ </ol>
101090
+
101071
101091
<span id="integration-with-the-javascript-job-queue"></span>
101072
101092
<span id="enqueuejob(queuename,-job,-arguments)"></span>
101073
101093
<h6 id="hostenqueuepromisejob"><dfn>HostEnqueuePromiseJob</dfn>(<var>job</var>,
@@ -101137,6 +101157,27 @@ dictionary <dfn dictionary>PromiseRejectionEventInit</dfn> : <span>EventInit</sp
101137
101157
</li>
101138
101158
</ol>
101139
101159
101160
+ <h6 id="hostenqueuetimeoutjob"><dfn>HostEnqueueTimeoutJob</dfn>(<var>job</var>, <var>realm</var>,
101161
+ <var>milliseconds</var>)</h6>
101162
+
101163
+ <p>JavaScript contains an <span>implementation-defined</span> <span
101164
+ data-x="js-HostEnqueueTimeoutJob">HostEnqueueTimeoutJob</span>(<var>job</var>,
101165
+ <var>milliseconds</var>) abstract operation to schedule an operation to be performed after a
101166
+ timeout. HTML schedules these operations using <span>run steps after a timeout</span>. User agents
101167
+ must use the following implementation: <ref spec=JAVASCRIPT></p>
101168
+
101169
+ <ol>
101170
+ <li><p>Let <var>global</var> be <var>realm</var>'s <span data-x="concept-realm-global">global
101171
+ object</span>.</p></li>
101172
+
101173
+ <li><p>Let <var>timeoutStep</var> be an algorithm step which <span data-x="queue a global
101174
+ task">queues a global task</span> on the <span>JavaScript engine task source</span> given
101175
+ <var>global</var> to perform <var>job</var>().</p></li>
101176
+
101177
+ <li><p><span>Run steps after a timeout</span> given <var>global</var>, "<code
101178
+ data-x="">JavaScript</code>", <var>milliseconds</var>, and <var>timeoutStep</var>.</p></li>
101179
+ </ol>
101180
+
101140
101181
<h6 id="hostmakejobcallback"><dfn>HostMakeJobCallback</dfn>(<var>callable</var>)</h6>
101141
101182
101142
101183
<p>JavaScript contains an <span>implementation-defined</span> <span
0 commit comments