- From: Mattias Buelens <notifications@github.com>
- Date: Tue, 10 Nov 2020 14:19:00 -0800
- To: whatwg/streams <streams@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
- Message-ID: <whatwg/streams/pull/1083/review/527653812@github.com>
@MattiasBuelens commented on this pull request.
> + |nextResult|.\[[Value]].
+ 1. Let |nextPromise| be [=a promise resolved with=] |nextResult|.\[[Value]].
+ 1. Return the result of [=reacting=] to |nextPromise| with the following fulfillment steps,
+ given the argument |iterResult|:
+ 1. If [$Type$](|iterResult|) is not Object, throw a {{TypeError}}.
+ 1. Let |done| be ? [$IteratorComplete$](|iterResult|).
+ 1. If |done| is true:
+ 1. Perform ! [$ReadableStreamDefaultControllerClose$](stream.[=ReadableStream/[[controller]]=]).
+ 1. Otherwise:
+ 1. Let |value| be ? [$IteratorValue$](|iterResult|).
+ 1. Perform ! [$ReadableStreamDefaultControllerEnqueue$](stream.[=ReadableStream/[[controller]]=],
+ |value|).
+ 1. Let |cancelAlgorithm| be the following steps:
+ 1. Let |returnMethod| be ? [$GetMethod$](|iteratorRecord|.\[[Iterator]], "return").
+ 1. If |returnMethod| is undefined, return [=a promise resolved with=] undefined.
+ 1. Let |returnResult| be ? [$Call$](|returnMethod|, |iteratorRecord|.\[[Iterator]]).
Good point, that would make `ReadableStream.from(new ReadableStream()).cancel("reason")` behave nicer. 👍
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/whatwg/streams/pull/1083#discussion_r520910080
Received on Tuesday, 10 November 2020 22:19:12 UTC