OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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 'use strict'; | 5 'use strict'; |
6 | 6 |
7 | 7 |
8 // This file relies on the fact that the following declaration has been made | 8 // This file relies on the fact that the following declaration has been made |
9 // in runtime.js: | 9 // in runtime.js: |
10 // var $Array = global.Array; | 10 // var $Array = global.Array; |
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
103 function SetUpArrayIterator() { | 103 function SetUpArrayIterator() { |
104 %CheckIsBootstrapping(); | 104 %CheckIsBootstrapping(); |
105 | 105 |
106 %FunctionSetPrototype(ArrayIterator, new $Object()); | 106 %FunctionSetPrototype(ArrayIterator, new $Object()); |
107 %FunctionSetInstanceClassName(ArrayIterator, 'Array Iterator'); | 107 %FunctionSetInstanceClassName(ArrayIterator, 'Array Iterator'); |
108 | 108 |
109 InstallFunctions(ArrayIterator.prototype, DONT_ENUM, $Array( | 109 InstallFunctions(ArrayIterator.prototype, DONT_ENUM, $Array( |
110 'next', ArrayIteratorNext | 110 'next', ArrayIteratorNext |
111 )); | 111 )); |
112 %FunctionSetName(ArrayIteratorIterator, '[Symbol.iterator]'); | 112 %FunctionSetName(ArrayIteratorIterator, '[Symbol.iterator]'); |
113 %AddProperty(ArrayIterator.prototype, symbolIterator, ArrayIteratorIterator, | 113 %AddNamedProperty(ArrayIterator.prototype, symbolIterator, |
114 DONT_ENUM); | 114 ArrayIteratorIterator, DONT_ENUM); |
115 } | 115 } |
116 SetUpArrayIterator(); | 116 SetUpArrayIterator(); |
117 | 117 |
118 | 118 |
119 function ExtendArrayPrototype() { | 119 function ExtendArrayPrototype() { |
120 %CheckIsBootstrapping(); | 120 %CheckIsBootstrapping(); |
121 | 121 |
122 InstallFunctions($Array.prototype, DONT_ENUM, $Array( | 122 InstallFunctions($Array.prototype, DONT_ENUM, $Array( |
123 'entries', ArrayEntries, | 123 'entries', ArrayEntries, |
124 'values', ArrayValues, | 124 'values', ArrayValues, |
125 'keys', ArrayKeys | 125 'keys', ArrayKeys |
126 )); | 126 )); |
127 | 127 |
128 %AddProperty($Array.prototype, symbolIterator, ArrayValues, DONT_ENUM); | 128 %AddNamedProperty($Array.prototype, symbolIterator, ArrayValues, DONT_ENUM); |
129 } | 129 } |
130 ExtendArrayPrototype(); | 130 ExtendArrayPrototype(); |
131 | 131 |
132 | 132 |
133 function ExtendTypedArrayPrototypes() { | 133 function ExtendTypedArrayPrototypes() { |
134 %CheckIsBootstrapping(); | 134 %CheckIsBootstrapping(); |
135 | 135 |
136 macro TYPED_ARRAYS(FUNCTION) | 136 macro TYPED_ARRAYS(FUNCTION) |
137 FUNCTION(Uint8Array) | 137 FUNCTION(Uint8Array) |
138 FUNCTION(Int8Array) | 138 FUNCTION(Int8Array) |
139 FUNCTION(Uint16Array) | 139 FUNCTION(Uint16Array) |
140 FUNCTION(Int16Array) | 140 FUNCTION(Int16Array) |
141 FUNCTION(Uint32Array) | 141 FUNCTION(Uint32Array) |
142 FUNCTION(Int32Array) | 142 FUNCTION(Int32Array) |
143 FUNCTION(Float32Array) | 143 FUNCTION(Float32Array) |
144 FUNCTION(Float64Array) | 144 FUNCTION(Float64Array) |
145 FUNCTION(Uint8ClampedArray) | 145 FUNCTION(Uint8ClampedArray) |
146 endmacro | 146 endmacro |
147 | 147 |
148 macro EXTEND_TYPED_ARRAY(NAME) | 148 macro EXTEND_TYPED_ARRAY(NAME) |
149 %AddProperty($NAME.prototype, 'entries', ArrayEntries, DONT_ENUM); | 149 %AddNamedProperty($NAME.prototype, 'entries', ArrayEntries, DONT_ENUM); |
150 %AddProperty($NAME.prototype, 'values', ArrayValues, DONT_ENUM); | 150 %AddNamedProperty($NAME.prototype, 'values', ArrayValues, DONT_ENUM); |
151 %AddProperty($NAME.prototype, 'keys', ArrayKeys, DONT_ENUM); | 151 %AddNamedProperty($NAME.prototype, 'keys', ArrayKeys, DONT_ENUM); |
152 %AddProperty($NAME.prototype, symbolIterator, ArrayValues, DONT_ENUM); | 152 %AddNamedProperty($NAME.prototype, symbolIterator, ArrayValues, DONT_ENUM); |
153 endmacro | 153 endmacro |
154 | 154 |
155 TYPED_ARRAYS(EXTEND_TYPED_ARRAY) | 155 TYPED_ARRAYS(EXTEND_TYPED_ARRAY) |
156 } | 156 } |
157 ExtendTypedArrayPrototypes(); | 157 ExtendTypedArrayPrototypes(); |
OLD | NEW |