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_PROPERTY_DETAILS_H_ | 5 #ifndef V8_PROPERTY_DETAILS_H_ |
6 #define V8_PROPERTY_DETAILS_H_ | 6 #define V8_PROPERTY_DETAILS_H_ |
7 | 7 |
8 #include "include/v8.h" | 8 #include "include/v8.h" |
9 #include "src/allocation.h" | 9 #include "src/allocation.h" |
10 #include "src/utils.h" | 10 #include "src/utils.h" |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
46 enum PropertyKind { kData = 0, kAccessor = 1 }; | 46 enum PropertyKind { kData = 0, kAccessor = 1 }; |
47 | 47 |
48 | 48 |
49 // Order of modes is significant. | 49 // Order of modes is significant. |
50 // Must fit in the BitField PropertyDetails::StoreModeField. | 50 // Must fit in the BitField PropertyDetails::StoreModeField. |
51 enum PropertyLocation { kField = 0, kDescriptor = 1 }; | 51 enum PropertyLocation { kField = 0, kDescriptor = 1 }; |
52 | 52 |
53 | 53 |
54 // Order of properties is significant. | 54 // Order of properties is significant. |
55 // Must fit in the BitField PropertyDetails::TypeField. | 55 // Must fit in the BitField PropertyDetails::TypeField. |
56 // A copy of this is in mirror-debugger.js. | 56 // A copy of this is in debug/mirrors.js. |
57 enum PropertyType { | 57 enum PropertyType { |
58 DATA = (kField << 1) | kData, | 58 DATA = (kField << 1) | kData, |
59 DATA_CONSTANT = (kDescriptor << 1) | kData, | 59 DATA_CONSTANT = (kDescriptor << 1) | kData, |
60 ACCESSOR = (kField << 1) | kAccessor, | 60 ACCESSOR = (kField << 1) | kAccessor, |
61 ACCESSOR_CONSTANT = (kDescriptor << 1) | kAccessor | 61 ACCESSOR_CONSTANT = (kDescriptor << 1) | kAccessor |
62 }; | 62 }; |
63 | 63 |
64 | 64 |
65 class Representation { | 65 class Representation { |
66 public: | 66 public: |
(...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
367 uint32_t value_; | 367 uint32_t value_; |
368 }; | 368 }; |
369 | 369 |
370 | 370 |
371 std::ostream& operator<<(std::ostream& os, | 371 std::ostream& operator<<(std::ostream& os, |
372 const PropertyAttributes& attributes); | 372 const PropertyAttributes& attributes); |
373 std::ostream& operator<<(std::ostream& os, const PropertyDetails& details); | 373 std::ostream& operator<<(std::ostream& os, const PropertyDetails& details); |
374 } } // namespace v8::internal | 374 } } // namespace v8::internal |
375 | 375 |
376 #endif // V8_PROPERTY_DETAILS_H_ | 376 #endif // V8_PROPERTY_DETAILS_H_ |
OLD | NEW |