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

Side by Side Diff: src/string.js

Issue 1065863003: Use array literals instead of array constructor in native javascript. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: rebase and fix Created 5 years, 8 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
« no previous file with comments | « src/snapshot/serialize.cc ('k') | src/string-iterator.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 var $stringCharAt; 5 var $stringCharAt;
6 var $stringIndexOf; 6 var $stringIndexOf;
7 var $stringSubstring; 7 var $stringSubstring;
8 8
9 (function() { 9 (function() {
10 10
11 %CheckIsBootstrapping(); 11 %CheckIsBootstrapping();
12 12
13 var GlobalArray = global.Array;
14 var GlobalRegExp = global.RegExp; 13 var GlobalRegExp = global.RegExp;
15 var GlobalString = global.String; 14 var GlobalString = global.String;
16 15
17 //------------------------------------------------------------------- 16 //-------------------------------------------------------------------
18 17
19 function StringConstructor(x) { 18 function StringConstructor(x) {
20 if (%_ArgumentsLength() == 0) x = ''; 19 if (%_ArgumentsLength() == 0) x = '';
21 if (%_IsConstructCall()) { 20 if (%_IsConstructCall()) {
22 %_SetValueOf(this, TO_STRING_INLINE(x)); 21 %_SetValueOf(this, TO_STRING_INLINE(x));
23 } else { 22 } else {
(...skipping 1094 matching lines...) Expand 10 before | Expand all | Expand 10 after
1118 1117
1119 // Set the String function and constructor. 1118 // Set the String function and constructor.
1120 %SetCode(GlobalString, StringConstructor); 1119 %SetCode(GlobalString, StringConstructor);
1121 %FunctionSetPrototype(GlobalString, new GlobalString()); 1120 %FunctionSetPrototype(GlobalString, new GlobalString());
1122 1121
1123 // Set up the constructor property on the String prototype object. 1122 // Set up the constructor property on the String prototype object.
1124 %AddNamedProperty( 1123 %AddNamedProperty(
1125 GlobalString.prototype, "constructor", GlobalString, DONT_ENUM); 1124 GlobalString.prototype, "constructor", GlobalString, DONT_ENUM);
1126 1125
1127 // Set up the non-enumerable functions on the String object. 1126 // Set up the non-enumerable functions on the String object.
1128 InstallFunctions(GlobalString, DONT_ENUM, GlobalArray( 1127 InstallFunctions(GlobalString, DONT_ENUM, [
1129 "fromCharCode", StringFromCharCode, 1128 "fromCharCode", StringFromCharCode,
1130 "fromCodePoint", StringFromCodePoint, 1129 "fromCodePoint", StringFromCodePoint,
1131 "raw", StringRaw 1130 "raw", StringRaw
1132 )); 1131 ]);
1133 1132
1134 // Set up the non-enumerable functions on the String prototype object. 1133 // Set up the non-enumerable functions on the String prototype object.
1135 InstallFunctions(GlobalString.prototype, DONT_ENUM, GlobalArray( 1134 InstallFunctions(GlobalString.prototype, DONT_ENUM, [
1136 "valueOf", StringValueOf, 1135 "valueOf", StringValueOf,
1137 "toString", StringToString, 1136 "toString", StringToString,
1138 "charAt", StringCharAtJS, 1137 "charAt", StringCharAtJS,
1139 "charCodeAt", StringCharCodeAtJS, 1138 "charCodeAt", StringCharCodeAtJS,
1140 "codePointAt", StringCodePointAt, 1139 "codePointAt", StringCodePointAt,
1141 "concat", StringConcat, 1140 "concat", StringConcat,
1142 "endsWith", StringEndsWith, 1141 "endsWith", StringEndsWith,
1143 "includes", StringIncludes, 1142 "includes", StringIncludes,
1144 "indexOf", StringIndexOfJS, 1143 "indexOf", StringIndexOfJS,
1145 "lastIndexOf", StringLastIndexOfJS, 1144 "lastIndexOf", StringLastIndexOfJS,
(...skipping 22 matching lines...) Expand all
1168 "fontsize", StringFontsize, 1167 "fontsize", StringFontsize,
1169 "big", StringBig, 1168 "big", StringBig,
1170 "blink", StringBlink, 1169 "blink", StringBlink,
1171 "bold", StringBold, 1170 "bold", StringBold,
1172 "fixed", StringFixed, 1171 "fixed", StringFixed,
1173 "italics", StringItalics, 1172 "italics", StringItalics,
1174 "small", StringSmall, 1173 "small", StringSmall,
1175 "strike", StringStrike, 1174 "strike", StringStrike,
1176 "sub", StringSub, 1175 "sub", StringSub,
1177 "sup", StringSup 1176 "sup", StringSup
1178 )); 1177 ]);
1179 1178
1180 $stringCharAt = StringCharAtJS; 1179 $stringCharAt = StringCharAtJS;
1181 $stringIndexOf = StringIndexOfJS; 1180 $stringIndexOf = StringIndexOfJS;
1182 $stringSubstring = StringSubstring; 1181 $stringSubstring = StringSubstring;
1183 1182
1184 })(); 1183 })();
OLDNEW
« no previous file with comments | « src/snapshot/serialize.cc ('k') | src/string-iterator.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698