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 "src/factory.h" | 8 #include "src/factory.h" |
9 #include "src/field-index.h" | 9 #include "src/field-index.h" |
10 #include "src/field-index-inl.h" | 10 #include "src/field-index-inl.h" |
11 #include "src/isolate.h" | 11 #include "src/isolate.h" |
12 #include "src/ostreams.h" | |
13 #include "src/types.h" | 12 #include "src/types.h" |
14 | 13 |
15 namespace v8 { | 14 namespace v8 { |
16 namespace internal { | 15 namespace internal { |
17 | 16 |
| 17 class OStream; |
| 18 |
18 // Abstraction for elements in instance-descriptor arrays. | 19 // Abstraction for elements in instance-descriptor arrays. |
19 // | 20 // |
20 // Each descriptor has a key, property attributes, property type, | 21 // Each descriptor has a key, property attributes, property type, |
21 // property index (in the actual instance-descriptor array) and | 22 // property index (in the actual instance-descriptor array) and |
22 // optionally a piece of data. | 23 // optionally a piece of data. |
23 class Descriptor BASE_EMBEDDED { | 24 class Descriptor BASE_EMBEDDED { |
24 public: | 25 public: |
25 void KeyToUniqueName() { | 26 void KeyToUniqueName() { |
26 if (!key_->IsUniqueName()) { | 27 if (!key_->IsUniqueName()) { |
27 key_ = key_->GetIsolate()->factory()->InternalizeString( | 28 key_ = key_->GetIsolate()->factory()->InternalizeString( |
(...skipping 459 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
487 int number_; | 488 int number_; |
488 bool cacheable_; | 489 bool cacheable_; |
489 PropertyDetails details_; | 490 PropertyDetails details_; |
490 }; | 491 }; |
491 | 492 |
492 | 493 |
493 OStream& operator<<(OStream& os, const LookupResult& r); | 494 OStream& operator<<(OStream& os, const LookupResult& r); |
494 } } // namespace v8::internal | 495 } } // namespace v8::internal |
495 | 496 |
496 #endif // V8_PROPERTY_H_ | 497 #endif // V8_PROPERTY_H_ |
OLD | NEW |