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 1827 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1838 static Handle<Object> PrepareSlowElementsForSort(Handle<JSObject> object, | 1838 static Handle<Object> PrepareSlowElementsForSort(Handle<JSObject> object, |
1839 uint32_t limit); | 1839 uint32_t limit); |
1840 | 1840 |
1841 MUST_USE_RESULT static MaybeHandle<Object> SetPropertyWithInterceptor( | 1841 MUST_USE_RESULT static MaybeHandle<Object> SetPropertyWithInterceptor( |
1842 LookupIterator* it, Handle<Object> value); | 1842 LookupIterator* it, Handle<Object> value); |
1843 | 1843 |
1844 // SetLocalPropertyIgnoreAttributes converts callbacks to fields. We need to | 1844 // SetLocalPropertyIgnoreAttributes converts callbacks to fields. We need to |
1845 // grant an exemption to ExecutableAccessor callbacks in some cases. | 1845 // grant an exemption to ExecutableAccessor callbacks in some cases. |
1846 enum ExecutableAccessorInfoHandling { DEFAULT_HANDLING, DONT_FORCE_FIELD }; | 1846 enum ExecutableAccessorInfoHandling { DEFAULT_HANDLING, DONT_FORCE_FIELD }; |
1847 | 1847 |
| 1848 MUST_USE_RESULT static MaybeHandle<Object> DefineOwnPropertyIgnoreAttributes( |
| 1849 LookupIterator* it, Handle<Object> value, PropertyAttributes attributes, |
| 1850 ExecutableAccessorInfoHandling handling = DEFAULT_HANDLING); |
| 1851 |
1848 MUST_USE_RESULT static MaybeHandle<Object> SetOwnPropertyIgnoreAttributes( | 1852 MUST_USE_RESULT static MaybeHandle<Object> SetOwnPropertyIgnoreAttributes( |
1849 Handle<JSObject> object, Handle<Name> name, Handle<Object> value, | 1853 Handle<JSObject> object, Handle<Name> name, Handle<Object> value, |
1850 PropertyAttributes attributes, | 1854 PropertyAttributes attributes, |
1851 ExecutableAccessorInfoHandling handling = DEFAULT_HANDLING); | 1855 ExecutableAccessorInfoHandling handling = DEFAULT_HANDLING); |
1852 | 1856 |
1853 MUST_USE_RESULT static MaybeHandle<Object> SetOwnElementIgnoreAttributes( | 1857 MUST_USE_RESULT static MaybeHandle<Object> SetOwnElementIgnoreAttributes( |
1854 Handle<JSObject> object, uint32_t index, Handle<Object> value, | 1858 Handle<JSObject> object, uint32_t index, Handle<Object> value, |
1855 PropertyAttributes attributes, | 1859 PropertyAttributes attributes, |
1856 ExecutableAccessorInfoHandling handling = DEFAULT_HANDLING); | 1860 ExecutableAccessorInfoHandling handling = DEFAULT_HANDLING); |
1857 | 1861 |
1858 MUST_USE_RESULT static MaybeHandle<Object> ReconfigureAsDataProperty( | |
1859 LookupIterator* it, Handle<Object> value, PropertyAttributes attributes, | |
1860 ExecutableAccessorInfoHandling handling = DEFAULT_HANDLING); | |
1861 | |
1862 static void AddProperty(Handle<JSObject> object, Handle<Name> name, | 1862 static void AddProperty(Handle<JSObject> object, Handle<Name> name, |
1863 Handle<Object> value, PropertyAttributes attributes); | 1863 Handle<Object> value, PropertyAttributes attributes); |
1864 | 1864 |
1865 MUST_USE_RESULT static MaybeHandle<Object> AddDataElement( | 1865 MUST_USE_RESULT static MaybeHandle<Object> AddDataElement( |
1866 Handle<JSObject> receiver, uint32_t index, Handle<Object> value, | 1866 Handle<JSObject> receiver, uint32_t index, Handle<Object> value, |
1867 PropertyAttributes attributes); | 1867 PropertyAttributes attributes); |
1868 | 1868 |
1869 // Extend the receiver with a single fast property appeared first in the | 1869 // Extend the receiver with a single fast property appeared first in the |
1870 // passed map. This also extends the property backing store if necessary. | 1870 // passed map. This also extends the property backing store if necessary. |
1871 static void AllocateStorageForMap(Handle<JSObject> object, Handle<Map> map); | 1871 static void AllocateStorageForMap(Handle<JSObject> object, Handle<Map> map); |
(...skipping 432 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2304 static void MigrateFastToFast(Handle<JSObject> object, Handle<Map> new_map); | 2304 static void MigrateFastToFast(Handle<JSObject> object, Handle<Map> new_map); |
2305 static void MigrateFastToSlow(Handle<JSObject> object, | 2305 static void MigrateFastToSlow(Handle<JSObject> object, |
2306 Handle<Map> new_map, | 2306 Handle<Map> new_map, |
2307 int expected_additional_properties); | 2307 int expected_additional_properties); |
2308 | 2308 |
2309 // Used from Object::GetProperty(). | 2309 // Used from Object::GetProperty(). |
2310 MUST_USE_RESULT static MaybeHandle<Object> GetPropertyWithFailedAccessCheck( | 2310 MUST_USE_RESULT static MaybeHandle<Object> GetPropertyWithFailedAccessCheck( |
2311 LookupIterator* it); | 2311 LookupIterator* it); |
2312 | 2312 |
2313 MUST_USE_RESULT static MaybeHandle<Object> SetPropertyWithFailedAccessCheck( | 2313 MUST_USE_RESULT static MaybeHandle<Object> SetPropertyWithFailedAccessCheck( |
2314 LookupIterator* it, Handle<Object> value, LanguageMode language_mode); | 2314 LookupIterator* it, Handle<Object> value); |
2315 | 2315 |
2316 // Add a property to a slow-case object. | 2316 // Add a property to a slow-case object. |
2317 static void AddSlowProperty(Handle<JSObject> object, | 2317 static void AddSlowProperty(Handle<JSObject> object, |
2318 Handle<Name> name, | 2318 Handle<Name> name, |
2319 Handle<Object> value, | 2319 Handle<Object> value, |
2320 PropertyAttributes attributes); | 2320 PropertyAttributes attributes); |
2321 | 2321 |
2322 MUST_USE_RESULT static MaybeHandle<Object> DeletePropertyWithInterceptor( | 2322 MUST_USE_RESULT static MaybeHandle<Object> DeletePropertyWithInterceptor( |
2323 LookupIterator* it); | 2323 LookupIterator* it); |
2324 | 2324 |
(...skipping 8519 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10844 } else { | 10844 } else { |
10845 value &= ~(1 << bit_position); | 10845 value &= ~(1 << bit_position); |
10846 } | 10846 } |
10847 return value; | 10847 return value; |
10848 } | 10848 } |
10849 }; | 10849 }; |
10850 | 10850 |
10851 } } // namespace v8::internal | 10851 } } // namespace v8::internal |
10852 | 10852 |
10853 #endif // V8_OBJECTS_H_ | 10853 #endif // V8_OBJECTS_H_ |
OLD | NEW |