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 #ifndef V8_OBJECTS_H_ | 5 #ifndef V8_OBJECTS_H_ |
6 #define V8_OBJECTS_H_ | 6 #define V8_OBJECTS_H_ |
7 | 7 |
8 #include <iosfwd> | 8 #include <iosfwd> |
9 | 9 |
10 #include "src/allocation.h" | 10 #include "src/allocation.h" |
(...skipping 1825 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1836 // ES6 9.1.6.1 | 1836 // ES6 9.1.6.1 |
1837 static bool OrdinaryDefineOwnProperty(Isolate* isolate, | 1837 static bool OrdinaryDefineOwnProperty(Isolate* isolate, |
1838 Handle<JSObject> object, | 1838 Handle<JSObject> object, |
1839 Handle<Object> key, | 1839 Handle<Object> key, |
1840 PropertyDescriptor* desc, | 1840 PropertyDescriptor* desc, |
1841 ShouldThrow should_throw); | 1841 ShouldThrow should_throw); |
1842 static bool OrdinaryDefineOwnProperty(LookupIterator* it, | 1842 static bool OrdinaryDefineOwnProperty(LookupIterator* it, |
1843 PropertyDescriptor* desc, | 1843 PropertyDescriptor* desc, |
1844 ShouldThrow should_throw); | 1844 ShouldThrow should_throw); |
1845 // ES6 9.1.6.2 | 1845 // ES6 9.1.6.2 |
1846 static bool IsCompatiblePropertyDescriptor(bool extensible, | 1846 static bool IsCompatiblePropertyDescriptor(Isolate* isolate, bool extensible, |
1847 PropertyDescriptor* desc, | 1847 PropertyDescriptor* desc, |
1848 PropertyDescriptor* current, | 1848 PropertyDescriptor* current, |
1849 Handle<Name> property_name); | 1849 Handle<Name> property_name); |
1850 // ES6 9.1.6.3 | 1850 // ES6 9.1.6.3 |
1851 // |it| can be NULL in cases where the ES spec passes |undefined| as the | 1851 // |it| can be NULL in cases where the ES spec passes |undefined| as the |
1852 // receiver. Exactly one of |it| and |property_name| must be provided. | 1852 // receiver. Exactly one of |it| and |property_name| must be provided. |
1853 static bool ValidateAndApplyPropertyDescriptor( | 1853 static bool ValidateAndApplyPropertyDescriptor( |
1854 LookupIterator* it, bool extensible, PropertyDescriptor* desc, | 1854 Isolate* isolate, LookupIterator* it, bool extensible, |
1855 PropertyDescriptor* current, ShouldThrow should_throw, | 1855 PropertyDescriptor* desc, PropertyDescriptor* current, |
1856 Handle<Name> property_name = Handle<Name>()); | 1856 ShouldThrow should_throw, Handle<Name> property_name = Handle<Name>()); |
1857 | 1857 |
1858 static bool GetOwnPropertyDescriptor(Isolate* isolate, | 1858 static bool GetOwnPropertyDescriptor(Isolate* isolate, |
1859 Handle<JSReceiver> object, | 1859 Handle<JSReceiver> object, |
1860 Handle<Object> key, | 1860 Handle<Object> key, |
1861 PropertyDescriptor* desc); | 1861 PropertyDescriptor* desc); |
1862 static bool GetOwnPropertyDescriptor(LookupIterator* it, | 1862 static bool GetOwnPropertyDescriptor(LookupIterator* it, |
1863 PropertyDescriptor* desc); | 1863 PropertyDescriptor* desc); |
1864 | 1864 |
1865 // Disallow further properties to be added to the object. This is | 1865 // Disallow further properties to be added to the object. This is |
1866 // ES6's [[PreventExtensions]] when passed DONT_THROW. | 1866 // ES6's [[PreventExtensions]] when passed DONT_THROW. |
(...skipping 8835 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10702 } | 10702 } |
10703 return value; | 10703 return value; |
10704 } | 10704 } |
10705 }; | 10705 }; |
10706 | 10706 |
10707 | 10707 |
10708 } // NOLINT, false-positive due to second-order macros. | 10708 } // NOLINT, false-positive due to second-order macros. |
10709 } // NOLINT, false-positive due to second-order macros. | 10709 } // NOLINT, false-positive due to second-order macros. |
10710 | 10710 |
10711 #endif // V8_OBJECTS_H_ | 10711 #endif // V8_OBJECTS_H_ |
OLD | NEW |