OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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_H_ | 5 #ifndef V8_PROPERTY_H_ |
6 #define V8_PROPERTY_H_ | 6 #define V8_PROPERTY_H_ |
7 | 7 |
8 #include "isolate.h" | 8 #include "isolate.h" |
9 #include "factory.h" | 9 #include "factory.h" |
10 #include "types.h" | 10 #include "types.h" |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
59 Handle<Object> value, | 59 Handle<Object> value, |
60 PropertyAttributes attributes, | 60 PropertyAttributes attributes, |
61 PropertyType type, | 61 PropertyType type, |
62 Representation representation, | 62 Representation representation, |
63 int field_index = 0) | 63 int field_index = 0) |
64 : key_(key), | 64 : key_(key), |
65 value_(value), | 65 value_(value), |
66 details_(attributes, type, representation, field_index) { } | 66 details_(attributes, type, representation, field_index) { } |
67 | 67 |
68 friend class DescriptorArray; | 68 friend class DescriptorArray; |
69 friend class Map; | |
70 }; | 69 }; |
71 | 70 |
72 | 71 |
73 class FieldDescriptor V8_FINAL : public Descriptor { | 72 class FieldDescriptor V8_FINAL : public Descriptor { |
74 public: | 73 public: |
75 FieldDescriptor(Handle<Name> key, | 74 FieldDescriptor(Handle<Name> key, |
76 int field_index, | 75 int field_index, |
77 PropertyAttributes attributes, | 76 PropertyAttributes attributes, |
78 Representation representation) | 77 Representation representation) |
79 : Descriptor(key, HeapType::Any(key->GetIsolate()), attributes, | 78 : Descriptor(key, HeapType::Any(key->GetIsolate()), attributes, |
(...skipping 450 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
530 JSReceiver* holder_; | 529 JSReceiver* holder_; |
531 Map* transition_; | 530 Map* transition_; |
532 int number_; | 531 int number_; |
533 bool cacheable_; | 532 bool cacheable_; |
534 PropertyDetails details_; | 533 PropertyDetails details_; |
535 }; | 534 }; |
536 | 535 |
537 } } // namespace v8::internal | 536 } } // namespace v8::internal |
538 | 537 |
539 #endif // V8_PROPERTY_H_ | 538 #endif // V8_PROPERTY_H_ |
OLD | NEW |