Re: [Futures] accept/resolve/reject on a resolver don't have clearly defined behavior if no value is passed
Anne van Kesteren <[email protected]>
| Newsgroups | gmane.comp.web.dom.general |
|---|---|
| Message-ID | <CADnb78j9GZG1OJ1JejB5L5hFygLp27L5nW5wD4ytCtmequst7g@mail.gmail.com> |
On Fri, May 31, 2013 at 4:43 AM, Boris Zbarsky <[email protected]> wrote: > The spec has: > > void accept(optional any value); > > and the prose says: > > The accept(value) method must run context object's accept with value. > > But "value" is optional, so it can be not passed. And the accept algorithm > assumes there is a value. Maybe. It certainly passes the value to > callbacks, but those callbacks have an _optional_ argument. So maybe the > intent is that if accept() is not passed a value the callbacks will also not > be passed a value? > > This needs to be clarified. The behavior we want is equivalent to: function accept(value) { ... } accept() Which will result in value being undefined. I'd argue this is an IDL bug, but I could make an intermediate fix to the specification if that helps. -- http://annevankesteren.nl/