Resuming execution contexts
as this code does not seem to take an argument.
The resumption state set by GeneratorStart
does not take an argument
because there is no way to access the first resumption value in a
generator, though there is the function.sent
proposal to allow that:
tc39/proposal-function.sent
In the case you're asking about, the value
applies in the case of
GeneratorYield
tc39.es/ecma262/2021/#sec-generatoryield which
does take a resumption value argument.
Hello,
On 2021-03-16 10:43, Logan Smyth <loganfsmyth at gmail.com> writes:
as this code does not seem to take an argument.
The resumption state set by
GeneratorStart
does not take an argument because there is no way to access the first resumption value in a generator, though there is thefunction.sent
proposal to allow that: tc39/proposal-function.sentIn the case you're asking about, the
value
applies in the case ofGeneratorYield
tc39.es/ecma262/2021/#sec-generatoryield which does take a resumption value argument.
Thanks a lot for the clarification. So would it be correct to state that resumptions are always passed a value, but in some cases it is not used (the sentence there is "when evaluation is resumed for that execution context") and in other cases it is used ("when evaluation is resumed with a Completion completionName")? If so, could they be made uniform in the specification text (for instance, "when evaluation is resumed for that execution context with a Completion completionName")?
Thanks again,
Alan
Hello,
I am trying to understand how the resuming of execution contexts work. For instance, step 9 of tc39.es/ecma262/2021/#sec-generatorresume says "Resume the suspended evaluation of genContext using NormalCompletion(value) as the result of the operation that suspended it." I can see that the code to run would be the one created by step 4 of tc39.es/ecma262/2021/#sec-generatorstart, but I do not understand what the "using NormalCompletion(value) as the result of the operation that suspended it" means, as this code does not seem to take an argument.
Please let me know if this is not the right forum to ask such questions. And thanks a lot for any help you may provide.
Best,
Alan