Skip to content

Commit

Permalink
Add fences for GeneratorStart; suppress some built-in iterators
Browse files Browse the repository at this point in the history
  • Loading branch information
syg committed Dec 10, 2021
1 parent c11f8b3 commit 9a55c12
Showing 1 changed file with 9 additions and 9 deletions.
18 changes: 9 additions & 9 deletions spec.html
Original file line number Diff line number Diff line change
Expand Up @@ -34311,7 +34311,7 @@ <h1>The %StringIteratorPrototype% Object</h1>
<emu-clause id="sec-%stringiteratorprototype%.next">
<h1>%StringIteratorPrototype%.next ( )</h1>
<emu-alg>
1. Return ? GeneratorResume(*this* value, ~empty~, *"%StringIteratorPrototype%"*).
1. Return ? <emu-meta suppress-effects="user-code">GeneratorResume(*this* value, ~empty~, *"%StringIteratorPrototype%"*)</emu-meta>.
</emu-alg>
</emu-clause>

Expand Down Expand Up @@ -39770,7 +39770,7 @@ <h1>The %MapIteratorPrototype% Object</h1>
<emu-clause id="sec-%mapiteratorprototype%.next">
<h1>%MapIteratorPrototype%.next ( )</h1>
<emu-alg>
1. Return ? GeneratorResume(*this* value, ~empty~, *"%MapIteratorPrototype%"*).
1. Return ? <emu-meta suppress-effects="user-code">GeneratorResume(*this* value, ~empty~, *"%MapIteratorPrototype%"*)</emu-meta>.
</emu-alg>
</emu-clause>

Expand Down Expand Up @@ -40058,7 +40058,7 @@ <h1>The %SetIteratorPrototype% Object</h1>
<emu-clause id="sec-%setiteratorprototype%.next">
<h1>%SetIteratorPrototype%.next ( )</h1>
<emu-alg>
1. Return ? GeneratorResume(*this* value, ~empty~, *"%SetIteratorPrototype%"*).
1. Return ? <emu-meta suppress-effects="user-code">GeneratorResume(*this* value, ~empty~, *"%SetIteratorPrototype%"*)</emu-meta>.
</emu-alg>
</emu-clause>

Expand Down Expand Up @@ -44493,7 +44493,7 @@ <h1>
1. Assert: The value of _generator_.[[GeneratorState]] is *undefined*.
1. Let _genContext_ be the running execution context.
1. Set the Generator component of _genContext_ to _generator_.
1. Set the code evaluation state of _genContext_ such that when evaluation is resumed for that execution context the following steps will be performed:
1. <emu-meta fence-effects="user-code"></emu-meta>Set the code evaluation state of _genContext_ such that when evaluation is resumed for that execution context the following steps will be performed:
1. If _generatorBody_ is a Parse Node, then
1. Let _result_ be the result of evaluating _generatorBody_.
1. Else,
Expand Down Expand Up @@ -44553,7 +44553,7 @@ <h1>
1. Let _methodContext_ be the running execution context.
1. Suspend _methodContext_.
1. Set _generator_.[[GeneratorState]] to ~executing~.
1. Push _genContext_ onto the execution context stack; _genContext_ is now the running execution context.
1. <emu-meta effects="user-code">Push _genContext_ onto the execution context stack</emu-meta>; _genContext_ is now the running execution context.
1. Resume the suspended evaluation of _genContext_ using NormalCompletion(_value_) as the result of the operation that suspended it. Let _result_ be the value returned by the resumed computation.
1. Assert: When we return here, _genContext_ has already been removed from the execution context stack and _methodContext_ is the currently running execution context.
1. Return Completion(_result_).
Expand Down Expand Up @@ -44585,7 +44585,7 @@ <h1>
1. Let _methodContext_ be the running execution context.
1. Suspend _methodContext_.
1. Set _generator_.[[GeneratorState]] to ~executing~.
1. Push _genContext_ onto the execution context stack; _genContext_ is now the running execution context.
1. <emu-meta effects="user-code">Push _genContext_ onto the execution context stack</emu-meta>; _genContext_ is now the running execution context.
1. Resume the suspended evaluation of _genContext_ using _abruptCompletion_ as the result of the operation that suspended it. Let _result_ be the completion record returned by the resumed computation.
1. Assert: When we return here, _genContext_ has already been removed from the execution context stack and _methodContext_ is the currently running execution context.
1. Return Completion(_result_).
Expand Down Expand Up @@ -44841,7 +44841,7 @@ <h1>
1. Assert: _generator_.[[AsyncGeneratorState]] is *undefined*.
1. Let _genContext_ be the running execution context.
1. Set the Generator component of _genContext_ to _generator_.
1. Set the code evaluation state of _genContext_ such that when evaluation is resumed for that execution context the following steps will be performed:
1. <emu-meta fence-effects="user-code"></emu-meta>Set the code evaluation state of _genContext_ such that when evaluation is resumed for that execution context the following steps will be performed:
1. If _generatorBody_ is a Parse Node, then
1. Let _result_ be the result of evaluating _generatorBody_.
1. Else,
Expand Down Expand Up @@ -44943,7 +44943,7 @@ <h1>
1. Let _callerContext_ be the running execution context.
1. Suspend _callerContext_.
1. Set _generator_.[[AsyncGeneratorState]] to ~executing~.
1. Push _genContext_ onto the execution context stack; _genContext_ is now the running execution context.
1. <emu-meta effects="user-code">Push _genContext_ onto the execution context stack</emu-meta>; _genContext_ is now the running execution context.
1. Resume the suspended evaluation of _genContext_ using _completion_ as the result of the operation that suspended it. Let _result_ be the completion record returned by the resumed computation.
1. Assert: _result_ is never an abrupt completion.
1. Assert: When we return here, _genContext_ has already been removed from the execution context stack and _callerContext_ is the currently running execution context.
Expand Down Expand Up @@ -45228,7 +45228,7 @@ <h1>
<emu-alg>
1. Assert: _promiseCapability_ is a PromiseCapability Record.
1. Let _runningContext_ be the running execution context.
1. Set the code evaluation state of _asyncContext_ such that when evaluation is resumed for that execution context the following steps will be performed:
1. <emu-meta fence-effects="user-code"></emu-meta>Set the code evaluation state of _asyncContext_ such that when evaluation is resumed for that execution context the following steps will be performed:
1. Let _result_ be the result of evaluating _asyncBody_.
1. Assert: If we return here, the async function either threw an exception or performed an implicit or explicit return; all awaiting is done.
1. Remove _asyncContext_ from the execution context stack and restore the execution context that is at the top of the execution context stack as the running execution context.
Expand Down

0 comments on commit 9a55c12

Please sign in to comment.