| 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/token.h" | 10 #include "vm/token.h" |
| 11 #include "vm/snapshot.h" | 11 #include "vm/snapshot.h" |
| 12 | 12 |
| 13 #include "include/dart_api.h" | |
| 14 | |
| 15 namespace dart { | 13 namespace dart { |
| 16 | 14 |
| 17 // Macrobatics to define the Object hierarchy of VM implementation classes. | 15 // Macrobatics to define the Object hierarchy of VM implementation classes. |
| 18 #define CLASS_LIST_NO_OBJECT(V) \ | 16 #define CLASS_LIST_NO_OBJECT(V) \ |
| 19 V(Class) \ | 17 V(Class) \ |
| 20 V(UnresolvedClass) \ | 18 V(UnresolvedClass) \ |
| 21 V(AbstractType) \ | 19 V(AbstractType) \ |
| 22 V(Type) \ | 20 V(Type) \ |
| 23 V(TypeParameter) \ | 21 V(TypeParameter) \ |
| 24 V(AbstractTypeArguments) \ | 22 V(AbstractTypeArguments) \ |
| (...skipping 1095 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1120 const T* data_; | 1118 const T* data_; |
| 1121 void* peer_; | 1119 void* peer_; |
| 1122 Dart_PeerFinalizer callback_; | 1120 Dart_PeerFinalizer callback_; |
| 1123 }; | 1121 }; |
| 1124 | 1122 |
| 1125 | 1123 |
| 1126 class RawExternalOneByteString : public RawString { | 1124 class RawExternalOneByteString : public RawString { |
| 1127 RAW_HEAP_OBJECT_IMPLEMENTATION(ExternalOneByteString); | 1125 RAW_HEAP_OBJECT_IMPLEMENTATION(ExternalOneByteString); |
| 1128 | 1126 |
| 1129 ExternalStringData<uint8_t>* external_data_; | 1127 ExternalStringData<uint8_t>* external_data_; |
| 1130 friend bool ExternalStringGetPeerHelper(Dart_Handle, void**); | 1128 friend class Api; |
| 1131 }; | 1129 }; |
| 1132 | 1130 |
| 1133 | 1131 |
| 1134 class RawExternalTwoByteString : public RawString { | 1132 class RawExternalTwoByteString : public RawString { |
| 1135 RAW_HEAP_OBJECT_IMPLEMENTATION(ExternalTwoByteString); | 1133 RAW_HEAP_OBJECT_IMPLEMENTATION(ExternalTwoByteString); |
| 1136 | 1134 |
| 1137 ExternalStringData<uint16_t>* external_data_; | 1135 ExternalStringData<uint16_t>* external_data_; |
| 1138 friend bool ExternalStringGetPeerHelper(Dart_Handle, void**); | 1136 friend class Api; |
| 1139 }; | 1137 }; |
| 1140 | 1138 |
| 1141 | 1139 |
| 1142 class RawExternalFourByteString : public RawString { | 1140 class RawExternalFourByteString : public RawString { |
| 1143 RAW_HEAP_OBJECT_IMPLEMENTATION(ExternalFourByteString); | 1141 RAW_HEAP_OBJECT_IMPLEMENTATION(ExternalFourByteString); |
| 1144 | 1142 |
| 1145 ExternalStringData<uint32_t>* external_data_; | 1143 ExternalStringData<uint32_t>* external_data_; |
| 1146 friend bool ExternalStringGetPeerHelper(Dart_Handle, void**); | 1144 friend class Api; |
| 1147 }; | 1145 }; |
| 1148 | 1146 |
| 1149 | 1147 |
| 1150 class RawBool : public RawInstance { | 1148 class RawBool : public RawInstance { |
| 1151 RAW_HEAP_OBJECT_IMPLEMENTATION(Bool); | 1149 RAW_HEAP_OBJECT_IMPLEMENTATION(Bool); |
| 1152 | 1150 |
| 1153 bool value_; | 1151 bool value_; |
| 1154 }; | 1152 }; |
| 1155 | 1153 |
| 1156 | 1154 |
| (...skipping 426 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1583 kExternalUint64ArrayCid == kByteArrayCid + 18 && | 1581 kExternalUint64ArrayCid == kByteArrayCid + 18 && |
| 1584 kExternalFloat32ArrayCid == kByteArrayCid + 19 && | 1582 kExternalFloat32ArrayCid == kByteArrayCid + 19 && |
| 1585 kExternalFloat64ArrayCid == kByteArrayCid + 20 && | 1583 kExternalFloat64ArrayCid == kByteArrayCid + 20 && |
| 1586 kStacktraceCid == kByteArrayCid + 21); | 1584 kStacktraceCid == kByteArrayCid + 21); |
| 1587 return (index >= kByteArrayCid && index <= kExternalFloat64ArrayCid); | 1585 return (index >= kByteArrayCid && index <= kExternalFloat64ArrayCid); |
| 1588 } | 1586 } |
| 1589 | 1587 |
| 1590 } // namespace dart | 1588 } // namespace dart |
| 1591 | 1589 |
| 1592 #endif // VM_RAW_OBJECT_H_ | 1590 #endif // VM_RAW_OBJECT_H_ |
| OLD | NEW |