Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(23)

Side by Side Diff: src/array-iterator.js

Issue 338323003: Add @@iterator to Array.prototype (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Fix @@iterator property attributes, add tests Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
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 %SetProperty(ArrayIterator.prototype, symbolIterator, ArrayIteratorIterator, 113 %SetProperty(ArrayIterator.prototype, symbolIterator, ArrayIteratorIterator,
114 DONT_ENUM | DONT_DELETE | READ_ONLY); 114 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
128 %SetProperty($Array.prototype, symbolIterator, ArrayValues, DONT_ENUM);
127 } 129 }
128 ExtendArrayPrototype(); 130 ExtendArrayPrototype();
OLDNEW
« no previous file with comments | « no previous file | test/mjsunit/harmony/array-iterator.js » ('j') | test/mjsunit/harmony/array-iterator.js » ('J')

Powered by Google App Engine
This is Rietveld 408576698