Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7761dec3dc4d8d6d9450e92079deeb981bafbfe7
      
https://github.com/WebKit/WebKit/commit/7761dec3dc4d8d6d9450e92079deeb981bafbfe7
  Author: Youenn Fablet <[email protected]>
  Date:   2025-12-03 (Wed, 03 Dec 2025)

  Changed paths:
    M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/async-iterator.any-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/async-iterator.any.serviceworker-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/async-iterator.any.sharedworker-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/async-iterator.any.worker-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/patched-global.any-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/patched-global.any.serviceworker-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/patched-global.any.sharedworker-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/patched-global.any.worker-expected.txt
    M Source/WebCore/Modules/streams/ReadableStream.cpp
    M Source/WebCore/Modules/streams/ReadableStream.h
    M Source/WebCore/bindings/js/JSDOMAsyncIterator.h

  Log Message:
  -----------
  Add a basic implementation of ReadableStream async iterable return method
rdar://165606483
https://bugs.webkit.org/show_bug.cgi?id=303303

Reviewed by Chris Dumez.

As per 
https://webidl.spec.whatwg.org/#js-asynchronous-iterator-prototype-object, we 
add support for the return method,
which allows to do error handling when iterating.

We add a concept to detect whether a native iterator implements returnSteps. If 
so, we expose the return method.
The returnSteps method returns a Ref<DOMPromise>.

We update JSDOMAsyncIterator to implement 
https://webidl.spec.whatwg.org/#js-asynchronous-iterator-prototype-object.
We reuse the settle method to handle both runNextSteps and runReturnSteps.
To disambiguate between the two, the settle method will be called with a 
parameter for runReturnSteps and without for runNextSteps.

Covered by rebased tests.

Canonical link: https://commits.webkit.org/303823@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to