[ES6] Implement Reflect.apply
authorutatane.tea@gmail.com <utatane.tea@gmail.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 26 Jul 2015 20:52:58 +0000 (20:52 +0000)
committerutatane.tea@gmail.com <utatane.tea@gmail.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 26 Jul 2015 20:52:58 +0000 (20:52 +0000)
commit3877d9f0d7b1c3fe1d9fe905f340d991bb7212a8
tree6654d1c7b0649cc16fc4dd6dedfd7d18395c1e4c
parent27489fb46f62e790dcec6909c5fcc05ec92b192d
[ES6] Implement Reflect.apply
https://bugs.webkit.org/show_bug.cgi?id=147306

Reviewed by Sam Weinig.

Implement Reflect.apply.
The large part of this can be implemented by the @apply builtin annotation.
The only thing which is different from the Funciton.prototype.apply is the third parameter,
"argumentsList" is needed to be an object.

* builtins/ReflectObject.js:
(apply):
(deleteProperty):
* runtime/ReflectObject.cpp:
* tests/stress/reflect-apply.js: Added.
(shouldBe):
(shouldThrow):
(get shouldThrow):
(.get shouldThrow):
(get var.array.get length):
(get var.array.get 0):
(.get var):
* tests/stress/reflect-delete-property.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@187407 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/builtins/ReflectObject.js
Source/JavaScriptCore/runtime/ReflectObject.cpp
Source/JavaScriptCore/tests/stress/reflect-apply.js [new file with mode: 0644]
Source/JavaScriptCore/tests/stress/reflect-delete-property.js