domenic / promises-unwrapping

The ES6 promises spec, as per September 2013 TC39 meeting
1.23k stars 95 forks source link

Remove `Invoke` usage #74

Closed domenic closed 11 years ago

domenic commented 11 years ago

It died recently.

stefanpenner commented 11 years ago

rip

allenwb commented 11 years ago

Note that the absence of the Invoke abstract operation in Rev 21 is a bug. It will be back in Rev 22 so you should feel free to use it. Only the [[Invoke]] internal method has died

7.3.10 Invoke(O,P, [args]) The abstract operation Invoke is used to call a method property of an object. The operation is called with arguments O, P , and optionally args where O serves as both the lookup point for the property and the this value of the call, P is the property key, and args is the list of arguments values passed to the method. If args is not present, an empty List is used as its value. This abstract operation performs the following steps:

  1. Assert: P is a valid property key.
  2. If args was not passed, then let args be a new empty List.
  3. Let obj be ToObject(O).
  4. ReturnIfAbrupt(obj).
  5. Let func be the result of GetMethod(obj, P).
  6. ReturnIfAbrupt(func).
  7. If func is undefined, throw a TypeError exception.
  8. Return the result of calling the [[Call]] internal method of func passing O as thisArgument and args as argumentsList.
domenic commented 11 years ago

Oh, well, in that case we're fine; we only use the Invoke abstract operation. Thanks @allenwb!