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" |
(...skipping 1291 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1302 RawSmi* length_; | 1302 RawSmi* length_; |
1303 RawObject** to() { return reinterpret_cast<RawObject**>(&ptr()->length_); } | 1303 RawObject** to() { return reinterpret_cast<RawObject**>(&ptr()->length_); } |
1304 }; | 1304 }; |
1305 | 1305 |
1306 | 1306 |
1307 class RawInt8Array : public RawByteArray { | 1307 class RawInt8Array : public RawByteArray { |
1308 RAW_HEAP_OBJECT_IMPLEMENTATION(Int8Array); | 1308 RAW_HEAP_OBJECT_IMPLEMENTATION(Int8Array); |
1309 | 1309 |
1310 // Variable length data follows here. | 1310 // Variable length data follows here. |
1311 int8_t data_[0]; | 1311 int8_t data_[0]; |
| 1312 |
| 1313 friend class Object; |
1312 }; | 1314 }; |
1313 | 1315 |
1314 | 1316 |
1315 class RawUint8Array : public RawByteArray { | 1317 class RawUint8Array : public RawByteArray { |
1316 RAW_HEAP_OBJECT_IMPLEMENTATION(Uint8Array); | 1318 RAW_HEAP_OBJECT_IMPLEMENTATION(Uint8Array); |
1317 | 1319 |
1318 // Variable length data follows here. | 1320 // Variable length data follows here. |
1319 uint8_t data_[0]; | 1321 uint8_t data_[0]; |
1320 }; | 1322 }; |
1321 | 1323 |
(...skipping 378 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1700 kExternalUint64ArrayCid == kExternalInt8ArrayCid + 8 && | 1702 kExternalUint64ArrayCid == kExternalInt8ArrayCid + 8 && |
1701 kExternalFloat32ArrayCid == kExternalInt8ArrayCid + 9 && | 1703 kExternalFloat32ArrayCid == kExternalInt8ArrayCid + 9 && |
1702 kExternalFloat64ArrayCid == kExternalInt8ArrayCid + 10 && | 1704 kExternalFloat64ArrayCid == kExternalInt8ArrayCid + 10 && |
1703 kStacktraceCid == kExternalInt8ArrayCid + 11); | 1705 kStacktraceCid == kExternalInt8ArrayCid + 11); |
1704 return (index >= kExternalInt8ArrayCid && index <= kExternalFloat64ArrayCid); | 1706 return (index >= kExternalInt8ArrayCid && index <= kExternalFloat64ArrayCid); |
1705 } | 1707 } |
1706 | 1708 |
1707 } // namespace dart | 1709 } // namespace dart |
1708 | 1710 |
1709 #endif // VM_RAW_OBJECT_H_ | 1711 #endif // VM_RAW_OBJECT_H_ |
OLD | NEW |