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/atomic.h" | 9 #include "vm/atomic.h" |
10 #include "vm/globals.h" | 10 #include "vm/globals.h" |
(...skipping 1003 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1014 | 1014 |
1015 RAW_HEAP_OBJECT_IMPLEMENTATION(Library); | 1015 RAW_HEAP_OBJECT_IMPLEMENTATION(Library); |
1016 | 1016 |
1017 RawObject** from() { return reinterpret_cast<RawObject**>(&ptr()->name_); } | 1017 RawObject** from() { return reinterpret_cast<RawObject**>(&ptr()->name_); } |
1018 RawString* name_; | 1018 RawString* name_; |
1019 RawString* url_; | 1019 RawString* url_; |
1020 RawScript* script_; | 1020 RawScript* script_; |
1021 RawString* private_key_; | 1021 RawString* private_key_; |
1022 RawArray* dictionary_; // Top-level names in this library. | 1022 RawArray* dictionary_; // Top-level names in this library. |
1023 RawGrowableObjectArray* metadata_; // Metadata on classes, methods etc. | 1023 RawGrowableObjectArray* metadata_; // Metadata on classes, methods etc. |
1024 RawClass* toplevel_class_; // Class containing top-level elements. | 1024 RawClass* toplevel_class_; // Class containing top-level elements. |
1025 RawGrowableObjectArray* patch_classes_; | 1025 RawGrowableObjectArray* patch_classes_; |
1026 RawArray* imports_; // List of Namespaces imported without prefix. | 1026 RawArray* imports_; // List of Namespaces imported without prefix. |
1027 RawArray* exports_; // List of re-exported Namespaces. | 1027 RawArray* exports_; // List of re-exported Namespaces. |
1028 RawArray* exports2_; // Copy of exports_, used by background | 1028 RawArray* exports2_; // Copy of exports_, used by background |
1029 // compiler to detect cycles without colliding | 1029 // compiler to detect cycles without colliding |
1030 // with mutator thread lookups. | 1030 // with mutator thread lookups. |
1031 RawInstance* load_error_; // Error iff load_state_ == kLoadError. | 1031 RawInstance* load_error_; // Error iff load_state_ == kLoadError. |
1032 RawObject** to_snapshot() { | 1032 RawObject** to_snapshot() { |
1033 return reinterpret_cast<RawObject**>(&ptr()->load_error_); | 1033 return reinterpret_cast<RawObject**>(&ptr()->load_error_); |
1034 } | 1034 } |
1035 RawArray* resolved_names_; // Cache of resolved names in library scope. | 1035 RawArray* resolved_names_; // Cache of resolved names in library scope. |
1036 RawArray* loaded_scripts_; // Array of scripts loaded in this library. | 1036 RawArray* loaded_scripts_; // Array of scripts loaded in this library. |
1037 RawObject** to() { | 1037 RawObject** to() { |
1038 return reinterpret_cast<RawObject**>(&ptr()->loaded_scripts_); | 1038 return reinterpret_cast<RawObject**>(&ptr()->loaded_scripts_); |
1039 } | 1039 } |
1040 | 1040 |
1041 Dart_NativeEntryResolver native_entry_resolver_; // Resolves natives. | 1041 Dart_NativeEntryResolver native_entry_resolver_; // Resolves natives. |
1042 Dart_NativeEntrySymbol native_entry_symbol_resolver_; | 1042 Dart_NativeEntrySymbol native_entry_symbol_resolver_; |
1043 classid_t index_; // Library id number. | 1043 classid_t index_; // Library id number. |
1044 uint16_t num_imports_; // Number of entries in imports_. | 1044 uint16_t num_imports_; // Number of entries in imports_. |
1045 int8_t load_state_; // Of type LibraryState. | 1045 int8_t load_state_; // Of type LibraryState. |
1046 bool corelib_imported_; | 1046 bool corelib_imported_; |
1047 bool is_dart_scheme_; | 1047 bool is_dart_scheme_; |
1048 bool debuggable_; // True if debugger can stop in library. | 1048 bool debuggable_; // True if debugger can stop in library. |
1049 bool is_in_fullsnapshot_; // True if library is in a full snapshot. | 1049 bool is_in_fullsnapshot_; // True if library is in a full snapshot. |
1050 | 1050 |
1051 friend class Class; | 1051 friend class Class; |
1052 friend class Isolate; | 1052 friend class Isolate; |
1053 }; | 1053 }; |
1054 | 1054 |
1055 | 1055 |
1056 class RawNamespace : public RawObject { | 1056 class RawNamespace : public RawObject { |
1057 RAW_HEAP_OBJECT_IMPLEMENTATION(Namespace); | 1057 RAW_HEAP_OBJECT_IMPLEMENTATION(Namespace); |
1058 | 1058 |
1059 RawObject** from() { | 1059 RawObject** from() { |
(...skipping 1311 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2371 COMPILE_ASSERT(kExternalTypedDataInt8ArrayCid == | 2371 COMPILE_ASSERT(kExternalTypedDataInt8ArrayCid == |
2372 kTypedDataInt8ArrayViewCid + 15); | 2372 kTypedDataInt8ArrayViewCid + 15); |
2373 COMPILE_ASSERT(kByteBufferCid == kExternalTypedDataInt8ArrayCid + 14); | 2373 COMPILE_ASSERT(kByteBufferCid == kExternalTypedDataInt8ArrayCid + 14); |
2374 COMPILE_ASSERT(kNullCid == kByteBufferCid + 1); | 2374 COMPILE_ASSERT(kNullCid == kByteBufferCid + 1); |
2375 return (kNullCid - kTypedDataInt8ArrayCid); | 2375 return (kNullCid - kTypedDataInt8ArrayCid); |
2376 } | 2376 } |
2377 | 2377 |
2378 } // namespace dart | 2378 } // namespace dart |
2379 | 2379 |
2380 #endif // VM_RAW_OBJECT_H_ | 2380 #endif // VM_RAW_OBJECT_H_ |
OLD | NEW |