OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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/assert-scope.h" | 10 #include "src/assert-scope.h" |
(...skipping 1780 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1791 ALLOW_CONVERTED_DOUBLE_ELEMENTS | 1791 ALLOW_CONVERTED_DOUBLE_ELEMENTS |
1792 }; | 1792 }; |
1793 | 1793 |
1794 | 1794 |
1795 // Indicator for one component of an AccessorPair. | 1795 // Indicator for one component of an AccessorPair. |
1796 enum AccessorComponent { | 1796 enum AccessorComponent { |
1797 ACCESSOR_GETTER, | 1797 ACCESSOR_GETTER, |
1798 ACCESSOR_SETTER | 1798 ACCESSOR_SETTER |
1799 }; | 1799 }; |
1800 | 1800 |
| 1801 enum class GetKeysConversion { kKeepNumbers, kConvertToString }; |
1801 | 1802 |
1802 enum GetKeysConversion { KEEP_NUMBERS, CONVERT_TO_STRING }; | 1803 enum class KeyCollectionMode { |
1803 | 1804 kOwnOnly = static_cast<int>(v8::KeyCollectionMode::kOwnOnly), |
1804 enum KeyCollectionType { OWN_ONLY, INCLUDE_PROTOS }; | 1805 kIncludePrototypes = |
| 1806 static_cast<int>(v8::KeyCollectionMode::kIncludePrototypes) |
| 1807 }; |
1805 | 1808 |
1806 // JSReceiver includes types on which properties can be defined, i.e., | 1809 // JSReceiver includes types on which properties can be defined, i.e., |
1807 // JSObject and JSProxy. | 1810 // JSObject and JSProxy. |
1808 class JSReceiver: public HeapObject { | 1811 class JSReceiver: public HeapObject { |
1809 public: | 1812 public: |
1810 // [properties]: Backing storage for properties. | 1813 // [properties]: Backing storage for properties. |
1811 // properties is a FixedArray in the fast case and a Dictionary in the | 1814 // properties is a FixedArray in the fast case and a Dictionary in the |
1812 // slow case. | 1815 // slow case. |
1813 DECL_ACCESSORS(properties, FixedArray) // Get and set fast properties. | 1816 DECL_ACCESSORS(properties, FixedArray) // Get and set fast properties. |
1814 inline void initialize_properties(); | 1817 inline void initialize_properties(); |
(...skipping 8945 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10760 } | 10763 } |
10761 return value; | 10764 return value; |
10762 } | 10765 } |
10763 }; | 10766 }; |
10764 | 10767 |
10765 | 10768 |
10766 } // NOLINT, false-positive due to second-order macros. | 10769 } // NOLINT, false-positive due to second-order macros. |
10767 } // NOLINT, false-positive due to second-order macros. | 10770 } // NOLINT, false-positive due to second-order macros. |
10768 | 10771 |
10769 #endif // V8_OBJECTS_H_ | 10772 #endif // V8_OBJECTS_H_ |
OLD | NEW |