gecko-dev/dom/bindings
Peter Van der Beken 3e507adf99 Bug 1788969 - Align async iterable code more closely with the spec. r=edgar
Implement the common steps for the next method from
https://webidl.spec.whatwg.org/#es-asynchronous-iterator-prototype-object in
a base class, that all async iterable iterator objects inherit from. Natives
that implement an async iterable only need to implement the "getting the
next iteration result" part in their GetNextPromise method. This means they
don't have to create the object according to "CreateIterResultObject"
themselves, but can just create promise and often resolve it with a native
value directly. We've switched to a special JS::Value to signal "end of
iteration", but that's hidden inside the
iterator_utils::ResolvePromiseForFinished helper.
The WebIDL parser now uses the right return type for the generated "next"
method, which means that any exceptions in the binding code itself will
actually be correctly converted to a rejected promise instead of being
rethrown.
This also uses a class for the generated iterable iterator that's not
exposed outside the binding code. No other code should create and/or
wrap these anyway.

Differential Revision: https://phabricator.services.mozilla.com/D156323
2022-09-22 18:28:15 +00:00
..
crashtests
docs
mozwebidlcodegen Bug 1659158 - Switch WebIDL from void to undefined. r=edgar 2022-09-21 07:44:58 +00:00
parser Bug 1788969 - Align async iterable code more closely with the spec. r=edgar 2022-09-22 18:28:15 +00:00
test Bug 1788969 - Align async iterable code more closely with the spec. r=edgar 2022-09-22 18:28:15 +00:00
AtomList.h
BindingCallContext.h
BindingDeclarations.h Bug 1781222 - Allow moving dom::Optional<>. r=edgar 2022-07-26 14:08:17 +00:00
BindingIPCUtils.h
Bindings.conf Bug 1486949 - Part 6: Fix ReadableStreamDefaultReader::Read to use the constructor realm r=smaug 2022-08-12 15:59:05 +00:00
BindingUtils.cpp Bug 1695435 - Part 4: Hide @@hasInstance behind flag also in xray r=edgar 2022-08-24 22:47:43 +00:00
BindingUtils.h Bug 1785804 - Part 2: Remove tracing name context and pass name through the trace methods r=sfink 2022-09-07 09:49:58 +00:00
CallbackFunction.h
CallbackInterface.cpp Bug 1769290 - Part 2: Apply mozilla-js-handle-rooted-typedef against dom/bindings r=edgar 2022-05-18 08:43:09 +00:00
CallbackInterface.h
CallbackObject.cpp Bug 1777574, automate CC zone handling, r=mccr8 2022-09-07 11:22:51 +00:00
CallbackObject.h Bug 1769290 - Part 1: Apply mozilla-js-handle-rooted-typedef against dom/streams r=smaug 2022-05-18 08:43:08 +00:00
Codegen.py Bug 1788969 - Align async iterable code more closely with the spec. r=edgar 2022-09-22 18:28:15 +00:00
Configuration.py Bug 1788969 - Align async iterable code more closely with the spec. r=edgar 2022-09-22 18:28:15 +00:00
DOMExceptionNames.h
DOMJSClass.h Bug 1747059 - Gecko support for ShadowRealms r=peterv,smaug 2022-06-28 22:04:18 +00:00
DOMJSProxyHandler.cpp
DOMJSProxyHandler.h
DOMString.h
ErrorIPCUtils.h
ErrorResult.h
Errors.msg Bug 1773242 - Add better error message when consuming non-Uint8Array. r=smaug 2022-06-14 07:42:29 +00:00
Exceptions.cpp
Exceptions.h
FakeString.h
GenerateCSS2PropertiesWebIDL.py Bug 1785366 - Blocklist backdrop filter on some Ivy/Sandybridge Intel Windows drivers. r=jrmuizel,emilio 2022-08-18 12:29:20 +00:00
IterableIterator.cpp Bug 1788969 - Align async iterable code more closely with the spec. r=edgar 2022-09-22 18:28:15 +00:00
IterableIterator.h Bug 1788969 - Align async iterable code more closely with the spec. r=edgar 2022-09-22 18:28:15 +00:00
JSSlots.h Bug 1766909 - Wrap ObservableArray proxy on getter, rather than throwing. r=peterv 2022-05-12 07:36:03 +00:00
mach_commands.py
Makefile.in
moz.build Bug 1781730 - Support optional arguments in async iterable declarations. r=edgar 2022-09-05 15:27:11 +00:00
NonRefcountedDOMObject.h
nsIScriptError.idl Bug 1780788 - Use abstract strings as in-arguments for ipdl. r=nika,necko-reviewers,media-playback-reviewers,alwu,dragana 2022-07-25 20:19:48 +00:00
nsScriptError.cpp Bug 1483662 - Add microSecondTimeStamp to nsConsoleMessage, nsScriptError and ConsoleEvent. r=edgar. 2022-09-02 04:58:28 +00:00
nsScriptError.h Bug 1483662 - Add microSecondTimeStamp to nsConsoleMessage, nsScriptError and ConsoleEvent. r=edgar. 2022-09-02 04:58:28 +00:00
nsScriptErrorWithStack.cpp Bug 1777574, automate CC zone handling, r=mccr8 2022-09-07 11:22:51 +00:00
Nullable.h
ObservableArrayProxyHandler.cpp Bug 1769290 - Part 2: Apply mozilla-js-handle-rooted-typedef against dom/bindings r=edgar 2022-05-18 08:43:09 +00:00
ObservableArrayProxyHandler.h Bug 1769290 - Part 2: Apply mozilla-js-handle-rooted-typedef against dom/bindings r=edgar 2022-05-18 08:43:09 +00:00
PinnedStringId.h
PrimitiveConversions.h
ProxyHandlerUtils.h
Record.h
RemoteObjectProxy.cpp Bug 1773732 - Set proto outparam in RemoteObjectProxyBase::getPrototypeIfOrdinary. r=peterv 2022-06-15 09:30:33 +00:00
RemoteObjectProxy.h
RootedDictionary.h
RootedOwningNonNull.h
RootedRefPtr.h
SimpleGlobalObject.cpp Bug 1777574, automate CC zone handling, r=mccr8 2022-09-07 11:22:51 +00:00
SimpleGlobalObject.h Bug 1777574, automate CC zone handling, r=mccr8 2022-09-07 11:22:51 +00:00
SpiderMonkeyInterface.h
ToJSValue.cpp
ToJSValue.h Bug 1788969 - Align async iterable code more closely with the spec. r=edgar 2022-09-22 18:28:15 +00:00
TypedArray.h
UnionMember.h Bug 1781223 - Allow moving WebIDL structs and unions. r=edgar 2022-07-28 09:33:09 +00:00
WebIDLGlobalNameHash.cpp
WebIDLGlobalNameHash.h
XrayExpandoClass.h