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 #include "vm/object.h" | 5 #include "vm/object.h" |
6 | 6 |
7 #include "include/dart_api.h" | 7 #include "include/dart_api.h" |
8 #include "platform/assert.h" | 8 #include "platform/assert.h" |
9 #include "vm/assembler.h" | 9 #include "vm/assembler.h" |
10 #include "vm/bigint_operations.h" | 10 #include "vm/bigint_operations.h" |
(...skipping 728 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
739 cls = Class::New<Int8Array>(); | 739 cls = Class::New<Int8Array>(); |
740 object_store->set_int8_array_class(cls); | 740 object_store->set_int8_array_class(cls); |
741 name = Symbols::_Int8Array(); | 741 name = Symbols::_Int8Array(); |
742 RegisterPrivateClass(cls, name, scalarlist_lib); | 742 RegisterPrivateClass(cls, name, scalarlist_lib); |
743 | 743 |
744 cls = Class::New<Uint8Array>(); | 744 cls = Class::New<Uint8Array>(); |
745 object_store->set_uint8_array_class(cls); | 745 object_store->set_uint8_array_class(cls); |
746 name = Symbols::_Uint8Array(); | 746 name = Symbols::_Uint8Array(); |
747 RegisterPrivateClass(cls, name, scalarlist_lib); | 747 RegisterPrivateClass(cls, name, scalarlist_lib); |
748 | 748 |
| 749 cls = Class::New<Uint8ClampedArray>(); |
| 750 object_store->set_uint8_clamped_array_class(cls); |
| 751 name = Symbols::_Uint8ClampedArray(); |
| 752 RegisterPrivateClass(cls, name, scalarlist_lib); |
| 753 |
749 cls = Class::New<Int16Array>(); | 754 cls = Class::New<Int16Array>(); |
750 object_store->set_int16_array_class(cls); | 755 object_store->set_int16_array_class(cls); |
751 name = Symbols::_Int16Array(); | 756 name = Symbols::_Int16Array(); |
752 RegisterPrivateClass(cls, name, scalarlist_lib); | 757 RegisterPrivateClass(cls, name, scalarlist_lib); |
753 | 758 |
754 cls = Class::New<Uint16Array>(); | 759 cls = Class::New<Uint16Array>(); |
755 object_store->set_uint16_array_class(cls); | 760 object_store->set_uint16_array_class(cls); |
756 name = Symbols::_Uint16Array(); | 761 name = Symbols::_Uint16Array(); |
757 RegisterPrivateClass(cls, name, scalarlist_lib); | 762 RegisterPrivateClass(cls, name, scalarlist_lib); |
758 | 763 |
(...skipping 30 matching lines...) Expand all Loading... |
789 cls = Class::New<ExternalInt8Array>(); | 794 cls = Class::New<ExternalInt8Array>(); |
790 object_store->set_external_int8_array_class(cls); | 795 object_store->set_external_int8_array_class(cls); |
791 name = Symbols::_ExternalInt8Array(); | 796 name = Symbols::_ExternalInt8Array(); |
792 RegisterPrivateClass(cls, name, scalarlist_lib); | 797 RegisterPrivateClass(cls, name, scalarlist_lib); |
793 | 798 |
794 cls = Class::New<ExternalUint8Array>(); | 799 cls = Class::New<ExternalUint8Array>(); |
795 object_store->set_external_uint8_array_class(cls); | 800 object_store->set_external_uint8_array_class(cls); |
796 name = Symbols::_ExternalUint8Array(); | 801 name = Symbols::_ExternalUint8Array(); |
797 RegisterPrivateClass(cls, name, scalarlist_lib); | 802 RegisterPrivateClass(cls, name, scalarlist_lib); |
798 | 803 |
| 804 cls = Class::New<ExternalUint8ClampedArray>(); |
| 805 object_store->set_external_uint8_clamped_array_class(cls); |
| 806 name = Symbols::_ExternalUint8ClampedArray(); |
| 807 RegisterPrivateClass(cls, name, scalarlist_lib); |
| 808 |
799 cls = Class::New<ExternalInt16Array>(); | 809 cls = Class::New<ExternalInt16Array>(); |
800 object_store->set_external_int16_array_class(cls); | 810 object_store->set_external_int16_array_class(cls); |
801 name = Symbols::_ExternalInt16Array(); | 811 name = Symbols::_ExternalInt16Array(); |
802 RegisterPrivateClass(cls, name, scalarlist_lib); | 812 RegisterPrivateClass(cls, name, scalarlist_lib); |
803 | 813 |
804 cls = Class::New<ExternalUint16Array>(); | 814 cls = Class::New<ExternalUint16Array>(); |
805 object_store->set_external_uint16_array_class(cls); | 815 object_store->set_external_uint16_array_class(cls); |
806 name = Symbols::_ExternalUint16Array(); | 816 name = Symbols::_ExternalUint16Array(); |
807 RegisterPrivateClass(cls, name, scalarlist_lib); | 817 RegisterPrivateClass(cls, name, scalarlist_lib); |
808 | 818 |
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1039 | 1049 |
1040 cls = Class::New<GrowableObjectArray>(); | 1050 cls = Class::New<GrowableObjectArray>(); |
1041 object_store->set_growable_object_array_class(cls); | 1051 object_store->set_growable_object_array_class(cls); |
1042 | 1052 |
1043 cls = Class::New<Int8Array>(); | 1053 cls = Class::New<Int8Array>(); |
1044 object_store->set_int8_array_class(cls); | 1054 object_store->set_int8_array_class(cls); |
1045 | 1055 |
1046 cls = Class::New<Uint8Array>(); | 1056 cls = Class::New<Uint8Array>(); |
1047 object_store->set_uint8_array_class(cls); | 1057 object_store->set_uint8_array_class(cls); |
1048 | 1058 |
| 1059 cls = Class::New<Uint8ClampedArray>(); |
| 1060 object_store->set_uint8_clamped_array_class(cls); |
| 1061 |
1049 cls = Class::New<Int16Array>(); | 1062 cls = Class::New<Int16Array>(); |
1050 object_store->set_int16_array_class(cls); | 1063 object_store->set_int16_array_class(cls); |
1051 | 1064 |
1052 cls = Class::New<Uint16Array>(); | 1065 cls = Class::New<Uint16Array>(); |
1053 object_store->set_uint16_array_class(cls); | 1066 object_store->set_uint16_array_class(cls); |
1054 | 1067 |
1055 cls = Class::New<Int32Array>(); | 1068 cls = Class::New<Int32Array>(); |
1056 object_store->set_int32_array_class(cls); | 1069 object_store->set_int32_array_class(cls); |
1057 | 1070 |
1058 cls = Class::New<Uint32Array>(); | 1071 cls = Class::New<Uint32Array>(); |
(...skipping 10 matching lines...) Expand all Loading... |
1069 | 1082 |
1070 cls = Class::New<Float64Array>(); | 1083 cls = Class::New<Float64Array>(); |
1071 object_store->set_float64_array_class(cls); | 1084 object_store->set_float64_array_class(cls); |
1072 | 1085 |
1073 cls = Class::New<ExternalInt8Array>(); | 1086 cls = Class::New<ExternalInt8Array>(); |
1074 object_store->set_external_int8_array_class(cls); | 1087 object_store->set_external_int8_array_class(cls); |
1075 | 1088 |
1076 cls = Class::New<ExternalUint8Array>(); | 1089 cls = Class::New<ExternalUint8Array>(); |
1077 object_store->set_external_uint8_array_class(cls); | 1090 object_store->set_external_uint8_array_class(cls); |
1078 | 1091 |
| 1092 cls = Class::New<ExternalUint8ClampedArray>(); |
| 1093 object_store->set_external_uint8_clamped_array_class(cls); |
| 1094 |
1079 cls = Class::New<ExternalInt16Array>(); | 1095 cls = Class::New<ExternalInt16Array>(); |
1080 object_store->set_external_int16_array_class(cls); | 1096 object_store->set_external_int16_array_class(cls); |
1081 | 1097 |
1082 cls = Class::New<ExternalUint16Array>(); | 1098 cls = Class::New<ExternalUint16Array>(); |
1083 object_store->set_external_uint16_array_class(cls); | 1099 object_store->set_external_uint16_array_class(cls); |
1084 | 1100 |
1085 cls = Class::New<ExternalInt32Array>(); | 1101 cls = Class::New<ExternalInt32Array>(); |
1086 object_store->set_external_int32_array_class(cls); | 1102 object_store->set_external_int32_array_class(cls); |
1087 | 1103 |
1088 cls = Class::New<ExternalUint32Array>(); | 1104 cls = Class::New<ExternalUint32Array>(); |
(...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1265 case kArrayCid: | 1281 case kArrayCid: |
1266 case kImmutableArrayCid: | 1282 case kImmutableArrayCid: |
1267 case kGrowableObjectArrayCid: | 1283 case kGrowableObjectArrayCid: |
1268 return Symbols::New("List"); | 1284 return Symbols::New("List"); |
1269 case kInt8ArrayCid: | 1285 case kInt8ArrayCid: |
1270 case kExternalInt8ArrayCid: | 1286 case kExternalInt8ArrayCid: |
1271 return Symbols::New("Int8List"); | 1287 return Symbols::New("Int8List"); |
1272 case kUint8ArrayCid: | 1288 case kUint8ArrayCid: |
1273 case kExternalUint8ArrayCid: | 1289 case kExternalUint8ArrayCid: |
1274 return Symbols::New("Uint8List"); | 1290 return Symbols::New("Uint8List"); |
| 1291 case kUint8ClampedArrayCid: |
| 1292 case kExternalUint8ClampedArrayCid: |
| 1293 return Symbols::New("Uint8ClampedList"); |
1275 case kInt16ArrayCid: | 1294 case kInt16ArrayCid: |
1276 case kExternalInt16ArrayCid: | 1295 case kExternalInt16ArrayCid: |
1277 return Symbols::New("Int16List"); | 1296 return Symbols::New("Int16List"); |
1278 case kUint16ArrayCid: | 1297 case kUint16ArrayCid: |
1279 case kExternalUint16ArrayCid: | 1298 case kExternalUint16ArrayCid: |
1280 return Symbols::New("Uint16List"); | 1299 return Symbols::New("Uint16List"); |
1281 case kInt32ArrayCid: | 1300 case kInt32ArrayCid: |
1282 case kExternalInt32ArrayCid: | 1301 case kExternalInt32ArrayCid: |
1283 return Symbols::New("Int32List"); | 1302 return Symbols::New("Int32List"); |
1284 case kUint32ArrayCid: | 1303 case kUint32ArrayCid: |
(...skipping 10188 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11473 Class::null()); | 11492 Class::null()); |
11474 return NewImpl<Uint8Array, RawUint8Array>(kClassId, data, len, space); | 11493 return NewImpl<Uint8Array, RawUint8Array>(kClassId, data, len, space); |
11475 } | 11494 } |
11476 | 11495 |
11477 | 11496 |
11478 const char* Uint8Array::ToCString() const { | 11497 const char* Uint8Array::ToCString() const { |
11479 return "_Uint8Array"; | 11498 return "_Uint8Array"; |
11480 } | 11499 } |
11481 | 11500 |
11482 | 11501 |
| 11502 RawUint8ClampedArray* Uint8ClampedArray::New(intptr_t len, Heap::Space space) { |
| 11503 ASSERT(Isolate::Current()->object_store()->uint8_clamped_array_class() != |
| 11504 Class::null()); |
| 11505 return NewImpl<Uint8ClampedArray, RawUint8ClampedArray>(kClassId, len, space); |
| 11506 } |
| 11507 |
| 11508 |
| 11509 RawUint8ClampedArray* Uint8ClampedArray::New(const uint8_t* data, |
| 11510 intptr_t len, |
| 11511 Heap::Space space) { |
| 11512 ASSERT(Isolate::Current()->object_store()->uint8_clamped_array_class() != |
| 11513 Class::null()); |
| 11514 return NewImpl<Uint8ClampedArray, |
| 11515 RawUint8ClampedArray>(kClassId, data, len, space); |
| 11516 } |
| 11517 |
| 11518 |
| 11519 const char* Uint8ClampedArray::ToCString() const { |
| 11520 return "_Uint8ClampedArray"; |
| 11521 } |
| 11522 |
| 11523 |
11483 RawInt16Array* Int16Array::New(intptr_t len, Heap::Space space) { | 11524 RawInt16Array* Int16Array::New(intptr_t len, Heap::Space space) { |
11484 ASSERT(Isolate::Current()->object_store()->int16_array_class() != | 11525 ASSERT(Isolate::Current()->object_store()->int16_array_class() != |
11485 Class::null()); | 11526 Class::null()); |
11486 return NewImpl<Int16Array, RawInt16Array>(kClassId, len, space); | 11527 return NewImpl<Int16Array, RawInt16Array>(kClassId, len, space); |
11487 } | 11528 } |
11488 | 11529 |
11489 | 11530 |
11490 RawInt16Array* Int16Array::New(const int16_t* data, | 11531 RawInt16Array* Int16Array::New(const int16_t* data, |
11491 intptr_t len, | 11532 intptr_t len, |
11492 Heap::Space space) { | 11533 Heap::Space space) { |
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11675 return NewExternalImpl<ExternalUint8Array, RawExternalUint8Array>( | 11716 return NewExternalImpl<ExternalUint8Array, RawExternalUint8Array>( |
11676 kClassId, data, len, peer, callback, space); | 11717 kClassId, data, len, peer, callback, space); |
11677 } | 11718 } |
11678 | 11719 |
11679 | 11720 |
11680 const char* ExternalUint8Array::ToCString() const { | 11721 const char* ExternalUint8Array::ToCString() const { |
11681 return "_ExternalUint8Array"; | 11722 return "_ExternalUint8Array"; |
11682 } | 11723 } |
11683 | 11724 |
11684 | 11725 |
| 11726 RawExternalUint8ClampedArray* ExternalUint8ClampedArray::New( |
| 11727 uint8_t* data, |
| 11728 intptr_t len, |
| 11729 void* peer, |
| 11730 Dart_PeerFinalizer callback, |
| 11731 Heap::Space space) { |
| 11732 ASSERT(Isolate::Current()-> |
| 11733 object_store()->external_uint8_clamped_array_class() != |
| 11734 Class::null()); |
| 11735 return NewExternalImpl<ExternalUint8ClampedArray, |
| 11736 RawExternalUint8ClampedArray>(kClassId, data, len, peer, callback, space); |
| 11737 } |
| 11738 |
| 11739 |
| 11740 const char* ExternalUint8ClampedArray::ToCString() const { |
| 11741 return "_ExternalUint8ClampedArray"; |
| 11742 } |
| 11743 |
| 11744 |
11685 RawExternalInt16Array* ExternalInt16Array::New(int16_t* data, | 11745 RawExternalInt16Array* ExternalInt16Array::New(int16_t* data, |
11686 intptr_t len, | 11746 intptr_t len, |
11687 void* peer, | 11747 void* peer, |
11688 Dart_PeerFinalizer callback, | 11748 Dart_PeerFinalizer callback, |
11689 Heap::Space space) { | 11749 Heap::Space space) { |
11690 ASSERT(Isolate::Current()->object_store()->external_int16_array_class() != | 11750 ASSERT(Isolate::Current()->object_store()->external_int16_array_class() != |
11691 Class::null()); | 11751 Class::null()); |
11692 return NewExternalImpl<ExternalInt16Array, RawExternalInt16Array>( | 11752 return NewExternalImpl<ExternalInt16Array, RawExternalInt16Array>( |
11693 kClassId, data, len, peer, callback, space); | 11753 kClassId, data, len, peer, callback, space); |
11694 } | 11754 } |
(...skipping 424 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
12119 } | 12179 } |
12120 return result.raw(); | 12180 return result.raw(); |
12121 } | 12181 } |
12122 | 12182 |
12123 | 12183 |
12124 const char* WeakProperty::ToCString() const { | 12184 const char* WeakProperty::ToCString() const { |
12125 return "_WeakProperty"; | 12185 return "_WeakProperty"; |
12126 } | 12186 } |
12127 | 12187 |
12128 } // namespace dart | 12188 } // namespace dart |
OLD | NEW |