| Index: src/harmony-typedarray.js
|
| diff --git a/src/harmony-typedarray.js b/src/harmony-typedarray.js
|
| index 88048b44c9e854cb5d57856b8abf86a4a3694a97..c7a4ffef792b2abde4a00b01b9da937b9d13480f 100644
|
| --- a/src/harmony-typedarray.js
|
| +++ b/src/harmony-typedarray.js
|
| @@ -59,6 +59,8 @@ utils.Import(function(from) {
|
| InnerArrayIndexOf = from.InnerArrayIndexOf;
|
| InnerArrayLastIndexOf = from.InnerArrayLastIndexOf;
|
| InnerArrayMap = from.InnerArrayMap;
|
| + InnerArrayReduce = from.InnerArrayReduce;
|
| + InnerArrayReduceRight = from.InnerArrayReduceRight;
|
| InnerArrayReverse = from.InnerArrayReverse;
|
| InnerArraySome = from.InnerArraySome;
|
| InnerArraySort = from.InnerArraySort;
|
| @@ -250,6 +252,28 @@ function TypedArraySome(f, receiver) {
|
| %FunctionSetLength(TypedArraySome, 1);
|
|
|
|
|
| +// ES6 draft 07-15-13, section 22.2.3.19
|
| +function TypedArrayReduce(callback, current) {
|
| + if (!%IsTypedArray(this)) throw MakeTypeError(kNotTypedArray);
|
| +
|
| + var length = %_TypedArrayGetLength(this);
|
| + return InnerArrayReduce(callback, current, this, length,
|
| + %_ArgumentsLength());
|
| +}
|
| +%FunctionSetLength(TypedArrayReduce, 1);
|
| +
|
| +
|
| +// ES6 draft 07-15-13, section 22.2.3.19
|
| +function TypedArrayReduceRight(callback, current) {
|
| + if (!%IsTypedArray(this)) throw MakeTypeError(kNotTypedArray);
|
| +
|
| + var length = %_TypedArrayGetLength(this);
|
| + return InnerArrayReduceRight(callback, current, this, length,
|
| + %_ArgumentsLength());
|
| +}
|
| +%FunctionSetLength(TypedArrayReduceRight, 1);
|
| +
|
| +
|
| // ES6 draft 08-24-14, section 22.2.2.2
|
| function TypedArrayOf() {
|
| var length = %_ArgumentsLength();
|
| @@ -289,6 +313,8 @@ macro EXTEND_TYPED_ARRAY(NAME)
|
| "lastIndexOf", TypedArrayLastIndexOf,
|
| "forEach", TypedArrayForEach,
|
| "map", TypedArrayMap,
|
| + "reduce", TypedArrayReduce,
|
| + "reduceRight", TypedArrayReduceRight,
|
| "reverse", TypedArrayReverse,
|
| "some", TypedArraySome,
|
| "sort", TypedArraySort
|
|
|