OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 // This file relies on the fact that the following declaration has been made | 7 // This file relies on the fact that the following declaration has been made |
8 // in runtime.js: | 8 // in runtime.js: |
9 // var $Array = global.Array; | 9 // var $Array = global.Array; |
10 | 10 |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
74 throw MakeTypeError('incompatible_method_receiver', | 74 throw MakeTypeError('incompatible_method_receiver', |
75 ['Set.prototype.forEach', this]); | 75 ['Set.prototype.forEach', this]); |
76 } | 76 } |
77 | 77 |
78 if (!IS_SPEC_FUNCTION(f)) { | 78 if (!IS_SPEC_FUNCTION(f)) { |
79 throw MakeTypeError('called_non_callable', [f]); | 79 throw MakeTypeError('called_non_callable', [f]); |
80 } | 80 } |
81 | 81 |
82 var iterator = new SetIterator(this, ITERATOR_KIND_VALUES); | 82 var iterator = new SetIterator(this, ITERATOR_KIND_VALUES); |
83 var entry; | 83 var entry; |
84 var stepping = %_DebugCallbackSupportsStepping(f); | 84 var stepping = DEBUG_IS_ACTIVE && %DebugCallbackSupportsStepping(f); |
85 while (!(entry = %SetIteratorNext(iterator)).done) { | 85 while (!(entry = %SetIteratorNext(iterator)).done) { |
86 if (stepping) %DebugPrepareStepInIfStepping(f); | 86 if (stepping) %DebugPrepareStepInIfStepping(f); |
87 %_CallFunction(receiver, entry.value, entry.value, this, f); | 87 %_CallFunction(receiver, entry.value, entry.value, this, f); |
88 } | 88 } |
89 } | 89 } |
90 | 90 |
91 | 91 |
92 // ------------------------------------------------------------------- | 92 // ------------------------------------------------------------------- |
93 | 93 |
94 function SetUpSet() { | 94 function SetUpSet() { |
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
185 throw MakeTypeError('incompatible_method_receiver', | 185 throw MakeTypeError('incompatible_method_receiver', |
186 ['Map.prototype.forEach', this]); | 186 ['Map.prototype.forEach', this]); |
187 } | 187 } |
188 | 188 |
189 if (!IS_SPEC_FUNCTION(f)) { | 189 if (!IS_SPEC_FUNCTION(f)) { |
190 throw MakeTypeError('called_non_callable', [f]); | 190 throw MakeTypeError('called_non_callable', [f]); |
191 } | 191 } |
192 | 192 |
193 var iterator = new MapIterator(this, ITERATOR_KIND_ENTRIES); | 193 var iterator = new MapIterator(this, ITERATOR_KIND_ENTRIES); |
194 var entry; | 194 var entry; |
195 var stepping = %_DebugCallbackSupportsStepping(f); | 195 var stepping = DEBUG_IS_ACTIVE && %DebugCallbackSupportsStepping(f); |
196 while (!(entry = %MapIteratorNext(iterator)).done) { | 196 while (!(entry = %MapIteratorNext(iterator)).done) { |
197 if (stepping) %DebugPrepareStepInIfStepping(f); | 197 if (stepping) %DebugPrepareStepInIfStepping(f); |
198 %_CallFunction(receiver, entry.value[1], entry.value[0], this, f); | 198 %_CallFunction(receiver, entry.value[1], entry.value[0], this, f); |
199 } | 199 } |
200 } | 200 } |
201 | 201 |
202 | 202 |
203 // ------------------------------------------------------------------- | 203 // ------------------------------------------------------------------- |
204 | 204 |
205 function SetUpMap() { | 205 function SetUpMap() { |
(...skipping 11 matching lines...) Expand all Loading... |
217 "get", MapGetJS, | 217 "get", MapGetJS, |
218 "set", MapSetJS, | 218 "set", MapSetJS, |
219 "has", MapHasJS, | 219 "has", MapHasJS, |
220 "delete", MapDeleteJS, | 220 "delete", MapDeleteJS, |
221 "clear", MapClearJS, | 221 "clear", MapClearJS, |
222 "forEach", MapForEach | 222 "forEach", MapForEach |
223 )); | 223 )); |
224 } | 224 } |
225 | 225 |
226 SetUpMap(); | 226 SetUpMap(); |
OLD | NEW |