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

Side by Side Diff: src/v8natives.js

Issue 548833002: [es6] implement Object.assign (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Rebase + IIFE Created 5 years, 7 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 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 $delete; 5 var $delete;
6 var $functionSourceString; 6 var $functionSourceString;
7 var $getIterator; 7 var $getIterator;
8 var $getMethod; 8 var $getMethod;
9 var $globalEval; 9 var $globalEval;
10 var $installConstants; 10 var $installConstants;
11 var $installFunctions; 11 var $installFunctions;
12 var $installGetter; 12 var $installGetter;
13 var $isFinite; 13 var $isFinite;
14 var $isNaN; 14 var $isNaN;
15 var $newFunctionString; 15 var $newFunctionString;
16 var $numberIsNaN; 16 var $numberIsNaN;
17 var $objectDefineProperties; 17 var $objectDefineProperties;
18 var $objectDefineProperty; 18 var $objectDefineProperty;
19 var $objectFreeze; 19 var $objectFreeze;
20 var $objectGetOwnPropertyDescriptor; 20 var $objectGetOwnPropertyDescriptor;
21 var $objectGetOwnPropertyKeys; 21 var $objectGetOwnPropertyKeys;
22 var $objectHasOwnProperty; 22 var $objectHasOwnProperty;
23 var $objectIsFrozen; 23 var $objectIsFrozen;
24 var $objectIsSealed; 24 var $objectIsSealed;
25 var $objectLookupGetter; 25 var $objectLookupGetter;
26 var $objectLookupSetter; 26 var $objectLookupSetter;
27 var $objectToString; 27 var $objectToString;
28 var $overrideFunction; 28 var $overrideFunction;
29 var $ownPropertyKeys;
arv (Not doing code reviews) 2015/05/06 15:35:48 $ownPropertyKeys does not need to be exported
30 var $propertyIsEnumerable;
29 var $setFunctionName; 31 var $setFunctionName;
30 var $setUpLockedPrototype; 32 var $setUpLockedPrototype;
31 var $toCompletePropertyDescriptor; 33 var $toCompletePropertyDescriptor;
32 var $toNameArray; 34 var $toNameArray;
33 35
34 (function() { 36 (function() {
35 37
36 %CheckIsBootstrapping(); 38 %CheckIsBootstrapping();
37 39
38 var GlobalArray = global.Array; 40 var GlobalArray = global.Array;
(...skipping 1095 matching lines...) Expand 10 before | Expand all | Expand 10 after
1134 seenKeys[name] = true; 1136 seenKeys[name] = true;
1135 propertyNames[j++] = name; 1137 propertyNames[j++] = name;
1136 } 1138 }
1137 propertyNames.length = j; 1139 propertyNames.length = j;
1138 } 1140 }
1139 1141
1140 return propertyNames; 1142 return propertyNames;
1141 } 1143 }
1142 1144
1143 1145
1146 // ES6 section 9.1.12 / 9.5.12
1147 function OwnPropertyKeys(obj) {
1148 if (%_IsJSProxy(obj)) {
1149 var handler = %GetHandler(obj);
1150 // TODO(caitp): Proxy.[[OwnPropertyKeys]] can not be implemented to spec
1151 // without an implementation of Direct Proxies.
1152 var names = CallTrap0(handler, "ownKeys", UNDEFINED);
1153 return ToNameArray(names, "getOwnPropertyNames", false);
1154 }
1155 return ObjectGetOwnPropertyKeys(obj, PROPERTY_ATTRIBUTES_PRIVATE_SYMBOL);
1156 }
1157
1158
1144 // ES5 section 15.2.3.4. 1159 // ES5 section 15.2.3.4.
1145 function ObjectGetOwnPropertyNames(obj) { 1160 function ObjectGetOwnPropertyNames(obj) {
1146 obj = TO_OBJECT_INLINE(obj); 1161 obj = TO_OBJECT_INLINE(obj);
1147 // Special handling for proxies. 1162 // Special handling for proxies.
1148 if (%_IsJSProxy(obj)) { 1163 if (%_IsJSProxy(obj)) {
1149 var handler = %GetHandler(obj); 1164 var handler = %GetHandler(obj);
1150 var names = CallTrap0(handler, "getOwnPropertyNames", UNDEFINED); 1165 var names = CallTrap0(handler, "getOwnPropertyNames", UNDEFINED);
1151 return ToNameArray(names, "getOwnPropertyNames", false); 1166 return ToNameArray(names, "getOwnPropertyNames", false);
1152 } 1167 }
1153 1168
(...skipping 782 matching lines...) Expand 10 before | Expand all | Expand 10 after
1936 $objectFreeze = ObjectFreezeJS; 1951 $objectFreeze = ObjectFreezeJS;
1937 $objectGetOwnPropertyDescriptor = ObjectGetOwnPropertyDescriptor; 1952 $objectGetOwnPropertyDescriptor = ObjectGetOwnPropertyDescriptor;
1938 $objectGetOwnPropertyKeys = ObjectGetOwnPropertyKeys; 1953 $objectGetOwnPropertyKeys = ObjectGetOwnPropertyKeys;
1939 $objectHasOwnProperty = ObjectHasOwnProperty; 1954 $objectHasOwnProperty = ObjectHasOwnProperty;
1940 $objectIsFrozen = ObjectIsFrozen; 1955 $objectIsFrozen = ObjectIsFrozen;
1941 $objectIsSealed = ObjectIsSealed; 1956 $objectIsSealed = ObjectIsSealed;
1942 $objectLookupGetter = ObjectLookupGetter; 1957 $objectLookupGetter = ObjectLookupGetter;
1943 $objectLookupSetter = ObjectLookupSetter; 1958 $objectLookupSetter = ObjectLookupSetter;
1944 $objectToString = ObjectToString; 1959 $objectToString = ObjectToString;
1945 $overrideFunction = OverrideFunction; 1960 $overrideFunction = OverrideFunction;
1961 $ownPropertyKeys = OwnPropertyKeys;
1962 $propertyIsEnumerable = ObjectPropertyIsEnumerable;
1946 $setFunctionName = SetFunctionName; 1963 $setFunctionName = SetFunctionName;
1947 $setUpLockedPrototype = SetUpLockedPrototype; 1964 $setUpLockedPrototype = SetUpLockedPrototype;
1948 $toCompletePropertyDescriptor = ToCompletePropertyDescriptor; 1965 $toCompletePropertyDescriptor = ToCompletePropertyDescriptor;
1949 $toNameArray = ToNameArray; 1966 $toNameArray = ToNameArray;
1950 1967
1951 })(); 1968 })();
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698