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

Side by Side Diff: src/runtime.js

Issue 1235153006: [es6] re-implement rest parameters via desugaring (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Refactor Scope::TempScope Created 5 years, 5 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/preparser.h ('k') | src/runtime/runtime.h » ('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 2006-2008 the V8 project authors. All rights reserved. 1 // Copyright 2006-2008 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 // This files contains runtime support implemented in JavaScript. 5 // This files contains runtime support implemented in JavaScript.
6 6
7 // CAUTION: Some of the functions specified in this file are called 7 // CAUTION: Some of the functions specified in this file are called
8 // directly from compiled code. These are the functions with names in 8 // directly from compiled code. These are the functions with names in
9 // ALL CAPS. The compiled code passes the first argument in 'this'. 9 // ALL CAPS. The compiled code passes the first argument in 'this'.
10 10
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 var CONCAT_ITERABLE_TO_ARRAY; 56 var CONCAT_ITERABLE_TO_ARRAY;
57 var APPLY_PREPARE; 57 var APPLY_PREPARE;
58 var REFLECT_APPLY_PREPARE; 58 var REFLECT_APPLY_PREPARE;
59 var REFLECT_CONSTRUCT_PREPARE; 59 var REFLECT_CONSTRUCT_PREPARE;
60 var STACK_OVERFLOW; 60 var STACK_OVERFLOW;
61 var TO_OBJECT; 61 var TO_OBJECT;
62 var TO_NUMBER; 62 var TO_NUMBER;
63 var TO_STRING; 63 var TO_STRING;
64 var TO_NAME; 64 var TO_NAME;
65 65
66 var $createEmptyArray;
67 var $createStrongEmptyArray;
66 var $defaultNumber; 68 var $defaultNumber;
67 var $defaultString; 69 var $defaultString;
68 var $NaN; 70 var $NaN;
69 var $nonNumberToNumber; 71 var $nonNumberToNumber;
70 var $nonStringToString; 72 var $nonStringToString;
71 var $sameValue; 73 var $sameValue;
72 var $sameValueZero; 74 var $sameValueZero;
73 var $toBoolean; 75 var $toBoolean;
74 var $toInt32; 76 var $toInt32;
75 var $toInteger; 77 var $toInteger;
(...skipping 901 matching lines...) Expand 10 before | Expand all | Expand 10 after
977 } 979 }
978 throw MakeTypeError(kCannotConvertToPrimitive); 980 throw MakeTypeError(kCannotConvertToPrimitive);
979 } 981 }
980 982
981 function ToPositiveInteger(x, rangeErrorIndex) { 983 function ToPositiveInteger(x, rangeErrorIndex) {
982 var i = TO_INTEGER_MAP_MINUS_ZERO(x); 984 var i = TO_INTEGER_MAP_MINUS_ZERO(x);
983 if (i < 0) throw MakeRangeError(rangeErrorIndex); 985 if (i < 0) throw MakeRangeError(rangeErrorIndex);
984 return i; 986 return i;
985 } 987 }
986 988
989 function CreateEmptyArray() {
990 return [];
991 }
992
993 function CreateStrongEmptyArray() {
994 "use strong";
995 return [];
996 }
997
987 //---------------------------------------------------------------------------- 998 //----------------------------------------------------------------------------
988 999
989 // NOTE: Setting the prototype for Array must take place as early as 1000 // NOTE: Setting the prototype for Array must take place as early as
990 // possible due to code generation for array literals. When 1001 // possible due to code generation for array literals. When
991 // generating code for a array literal a boilerplate array is created 1002 // generating code for a array literal a boilerplate array is created
992 // that is cloned when running the code. It is essential that the 1003 // that is cloned when running the code. It is essential that the
993 // boilerplate gets the right prototype. 1004 // boilerplate gets the right prototype.
994 %FunctionSetPrototype(GlobalArray, new GlobalArray(0)); 1005 %FunctionSetPrototype(GlobalArray, new GlobalArray(0));
995 1006
996 //---------------------------------------------------------------------------- 1007 //----------------------------------------------------------------------------
(...skipping 10 matching lines...) Expand all
1007 $toInt32 = ToInt32; 1018 $toInt32 = ToInt32;
1008 $toInteger = ToInteger; 1019 $toInteger = ToInteger;
1009 $toLength = ToLength; 1020 $toLength = ToLength;
1010 $toName = ToName; 1021 $toName = ToName;
1011 $toNumber = ToNumber; 1022 $toNumber = ToNumber;
1012 $toObject = ToObject; 1023 $toObject = ToObject;
1013 $toPositiveInteger = ToPositiveInteger; 1024 $toPositiveInteger = ToPositiveInteger;
1014 $toPrimitive = ToPrimitive; 1025 $toPrimitive = ToPrimitive;
1015 $toString = ToString; 1026 $toString = ToString;
1016 $toUint32 = ToUint32; 1027 $toUint32 = ToUint32;
1028 $createEmptyArray = CreateEmptyArray
1029 $createStrongEmptyArray = CreateStrongEmptyArray;
1017 1030
1018 }) 1031 })
OLDNEW
« no previous file with comments | « src/preparser.h ('k') | src/runtime/runtime.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698