| OLD | NEW |
| 1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // Array's toString should call the object's own join method, if one exists and | 5 // Array's toString should call the object's own join method, if one exists and |
| 6 // is callable. Otherwise, just use the original Object.toString function. | 6 // is callable. Otherwise, just use the original Object.toString function. |
| 7 | 7 |
| 8 // Flags: --allow-natives-syntax | |
| 9 | |
| 10 var typedArrayConstructors = [ | 8 var typedArrayConstructors = [ |
| 11 Uint8Array, | 9 Uint8Array, |
| 12 Int8Array, | 10 Int8Array, |
| 13 Uint16Array, | 11 Uint16Array, |
| 14 Int16Array, | 12 Int16Array, |
| 15 Uint32Array, | 13 Uint32Array, |
| 16 Int32Array, | 14 Int32Array, |
| 17 Uint8ClampedArray, | 15 Uint8ClampedArray, |
| 18 Float32Array, | 16 Float32Array, |
| 19 Float64Array | 17 Float64Array |
| (...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 91 let pushArgs = (label) => (...args) => log.push(label, args); | 89 let pushArgs = (label) => (...args) => log.push(label, args); |
| 92 | 90 |
| 93 let NumberToLocaleString = Number.prototype.toLocaleString; | 91 let NumberToLocaleString = Number.prototype.toLocaleString; |
| 94 Number.prototype.toLocaleString = pushArgs("Number"); | 92 Number.prototype.toLocaleString = pushArgs("Number"); |
| 95 | 93 |
| 96 (new constructor([1, 2])).toLocaleString(); | 94 (new constructor([1, 2])).toLocaleString(); |
| 97 assertEquals(["Number", [], "Number", []], log); | 95 assertEquals(["Number", [], "Number", []], log); |
| 98 | 96 |
| 99 Number.prototype.toLocaleString = NumberToLocaleString; | 97 Number.prototype.toLocaleString = NumberToLocaleString; |
| 100 })(); | 98 })(); |
| 101 | |
| 102 // Detached Operation | |
| 103 var array = new constructor([1, 2, 3]); | |
| 104 %ArrayBufferNeuter(array.buffer); | |
| 105 assertThrows(() => array.join(), TypeError); | |
| 106 assertThrows(() => array.toLocalString(), TypeError); | |
| 107 assertThrows(() => array.toString(), TypeError); | |
| 108 } | 99 } |
| OLD | NEW |