github at esdiscuss.org (2013-07-12T02:27:00.659Z)
On Mon 29 Apr 2013 19:25, Ron Buckton <rbuckton at chronicles.org> writes:
> The desugaring for `yield*` in the face of using `{ value?, done? }` is more likely (without refutable matching or `let` expressions for the moment):
>
> ```js
> let a;
> {
> [...]
> a = result;
> }
> ```
Correct me if I am wrong, but I don't think this works, given that like
`yield X`, `yield* X` is an expression.
`close()` does not seem to have much value given that it isn't part of the
iterators specification, and one can do any needed action by doing a
`throw()` on the iterator and relying on the generator to have a finally
block if needed.
On Mon 29 Apr 2013 19:25, Ron Buckton <rbuckton at chronicles.org> writes: > The desugaring for yield* in the face of using { value?, done? } is more likely (without refutable matching or let expressions for the moment): > > ```js > let a; > { > [...] > a = result; > } > ``` Correct me if I am wrong, but I don't think this works, given that like "yield X", "yield* X" is an expression. close() does not seem to have much value given that it isn't part of the iterators specification, and one can do any needed action by doing a throw() on the iterator and relying on the generator to have a finally block if needed. Andy