| OLD | NEW |
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef VM_RAW_OBJECT_H_ | 5 #ifndef VM_RAW_OBJECT_H_ |
| 6 #define VM_RAW_OBJECT_H_ | 6 #define VM_RAW_OBJECT_H_ |
| 7 | 7 |
| 8 #include "platform/assert.h" | 8 #include "platform/assert.h" |
| 9 #include "vm/globals.h" | 9 #include "vm/globals.h" |
| 10 #include "vm/snapshot.h" | 10 #include "vm/snapshot.h" |
| (...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 305 kFinalized, // All checks completed, class ready for use. | 305 kFinalized, // All checks completed, class ready for use. |
| 306 }; | 306 }; |
| 307 | 307 |
| 308 private: | 308 private: |
| 309 RAW_HEAP_OBJECT_IMPLEMENTATION(Class); | 309 RAW_HEAP_OBJECT_IMPLEMENTATION(Class); |
| 310 | 310 |
| 311 RawObject** from() { return reinterpret_cast<RawObject**>(&ptr()->name_); } | 311 RawObject** from() { return reinterpret_cast<RawObject**>(&ptr()->name_); } |
| 312 RawString* name_; | 312 RawString* name_; |
| 313 RawArray* functions_; | 313 RawArray* functions_; |
| 314 RawArray* fields_; | 314 RawArray* fields_; |
| 315 // TODO(srdjan): RawTypeArguments* interfaces_; // Array of Type. | |
| 316 RawArray* interfaces_; // Array of AbstractType. | 315 RawArray* interfaces_; // Array of AbstractType. |
| 317 RawScript* script_; | 316 RawScript* script_; |
| 318 RawLibrary* library_; | 317 RawLibrary* library_; |
| 319 RawArray* type_parameters_; // Array of String. | 318 RawTypeArguments* type_parameters_; // Array of TypeParameter. |
| 320 RawTypeArguments* type_parameter_extends_; // DynamicType if no extends. | 319 RawTypeArguments* type_parameter_bounds_; // DynamicType if no bound. |
| 321 RawType* super_type_; | 320 RawType* super_type_; |
| 322 RawObject* factory_class_; // UnresolvedClass (until finalization) or Class. | 321 RawObject* factory_class_; // UnresolvedClass (until finalization) or Class. |
| 323 RawFunction* signature_function_; // Associated function for signature class. | 322 RawFunction* signature_function_; // Associated function for signature class. |
| 324 RawArray* functions_cache_; // See class FunctionsCache. | 323 RawArray* functions_cache_; // See class FunctionsCache. |
| 325 RawArray* constants_; // Canonicalized values of this class. | 324 RawArray* constants_; // Canonicalized values of this class. |
| 326 // TODO(srdjan): RawTypeArguments* canonical_types_; | |
| 327 RawArray* canonical_types_; // Canonicalized types of this class. | 325 RawArray* canonical_types_; // Canonicalized types of this class. |
| 328 RawCode* allocation_stub_; // Stub code for allocation of instances. | 326 RawCode* allocation_stub_; // Stub code for allocation of instances. |
| 329 RawObject** to() { | 327 RawObject** to() { |
| 330 return reinterpret_cast<RawObject**>(&ptr()->allocation_stub_); | 328 return reinterpret_cast<RawObject**>(&ptr()->allocation_stub_); |
| 331 } | 329 } |
| 332 | 330 |
| 333 cpp_vtable handle_vtable_; | 331 cpp_vtable handle_vtable_; |
| 334 intptr_t instance_size_; | 332 intptr_t instance_size_; |
| 335 ObjectKind instance_kind_; | 333 ObjectKind instance_kind_; |
| 336 intptr_t type_arguments_instance_field_offset_; // May be kNoTypeArguments. | 334 intptr_t type_arguments_instance_field_offset_; // May be kNoTypeArguments. |
| (...skipping 704 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1041 intptr_t type_; // Uninitialized, simple or complex. | 1039 intptr_t type_; // Uninitialized, simple or complex. |
| 1042 intptr_t flags_; // Represents global/local, case insensitive, multiline. | 1040 intptr_t flags_; // Represents global/local, case insensitive, multiline. |
| 1043 | 1041 |
| 1044 // Variable length data follows here. | 1042 // Variable length data follows here. |
| 1045 uint8_t data_[0]; | 1043 uint8_t data_[0]; |
| 1046 }; | 1044 }; |
| 1047 | 1045 |
| 1048 } // namespace dart | 1046 } // namespace dart |
| 1049 | 1047 |
| 1050 #endif // VM_RAW_OBJECT_H_ | 1048 #endif // VM_RAW_OBJECT_H_ |
| OLD | NEW |