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 10184 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11469 Class::null()); | 11488 Class::null()); |
11470 return NewImpl<Uint8Array, RawUint8Array>(kClassId, data, len, space); | 11489 return NewImpl<Uint8Array, RawUint8Array>(kClassId, data, len, space); |
11471 } | 11490 } |
11472 | 11491 |
11473 | 11492 |
11474 const char* Uint8Array::ToCString() const { | 11493 const char* Uint8Array::ToCString() const { |
11475 return "_Uint8Array"; | 11494 return "_Uint8Array"; |
11476 } | 11495 } |
11477 | 11496 |
11478 | 11497 |
| 11498 RawUint8ClampedArray* Uint8ClampedArray::New(intptr_t len, Heap::Space space) { |
| 11499 ASSERT(Isolate::Current()->object_store()->uint8_clamped_array_class() != |
| 11500 Class::null()); |
| 11501 return NewImpl<Uint8ClampedArray, RawUint8ClampedArray>(kClassId, len, space); |
| 11502 } |
| 11503 |
| 11504 |
| 11505 RawUint8ClampedArray* Uint8ClampedArray::New(const uint8_t* data, |
| 11506 intptr_t len, |
| 11507 Heap::Space space) { |
| 11508 ASSERT(Isolate::Current()->object_store()->uint8_clamped_array_class() != |
| 11509 Class::null()); |
| 11510 return NewImpl<Uint8ClampedArray, |
| 11511 RawUint8ClampedArray>(kClassId, data, len, space); |
| 11512 } |
| 11513 |
| 11514 |
| 11515 const char* Uint8ClampedArray::ToCString() const { |
| 11516 return "_Uint8ClampedArray"; |
| 11517 } |
| 11518 |
| 11519 |
11479 RawInt16Array* Int16Array::New(intptr_t len, Heap::Space space) { | 11520 RawInt16Array* Int16Array::New(intptr_t len, Heap::Space space) { |
11480 ASSERT(Isolate::Current()->object_store()->int16_array_class() != | 11521 ASSERT(Isolate::Current()->object_store()->int16_array_class() != |
11481 Class::null()); | 11522 Class::null()); |
11482 return NewImpl<Int16Array, RawInt16Array>(kClassId, len, space); | 11523 return NewImpl<Int16Array, RawInt16Array>(kClassId, len, space); |
11483 } | 11524 } |
11484 | 11525 |
11485 | 11526 |
11486 RawInt16Array* Int16Array::New(const int16_t* data, | 11527 RawInt16Array* Int16Array::New(const int16_t* data, |
11487 intptr_t len, | 11528 intptr_t len, |
11488 Heap::Space space) { | 11529 Heap::Space space) { |
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11671 return NewExternalImpl<ExternalUint8Array, RawExternalUint8Array>( | 11712 return NewExternalImpl<ExternalUint8Array, RawExternalUint8Array>( |
11672 kClassId, data, len, peer, callback, space); | 11713 kClassId, data, len, peer, callback, space); |
11673 } | 11714 } |
11674 | 11715 |
11675 | 11716 |
11676 const char* ExternalUint8Array::ToCString() const { | 11717 const char* ExternalUint8Array::ToCString() const { |
11677 return "_ExternalUint8Array"; | 11718 return "_ExternalUint8Array"; |
11678 } | 11719 } |
11679 | 11720 |
11680 | 11721 |
| 11722 RawExternalUint8ClampedArray* ExternalUint8ClampedArray::New( |
| 11723 uint8_t* data, |
| 11724 intptr_t len, |
| 11725 void* peer, |
| 11726 Dart_PeerFinalizer callback, |
| 11727 Heap::Space space) { |
| 11728 ASSERT(Isolate::Current()-> |
| 11729 object_store()->external_uint8_clamped_array_class() != |
| 11730 Class::null()); |
| 11731 return NewExternalImpl<ExternalUint8ClampedArray, |
| 11732 RawExternalUint8ClampedArray>(kClassId, data, len, peer, callback, space); |
| 11733 } |
| 11734 |
| 11735 |
| 11736 const char* ExternalUint8ClampedArray::ToCString() const { |
| 11737 return "_ExternalUint8ClampedArray"; |
| 11738 } |
| 11739 |
| 11740 |
11681 RawExternalInt16Array* ExternalInt16Array::New(int16_t* data, | 11741 RawExternalInt16Array* ExternalInt16Array::New(int16_t* data, |
11682 intptr_t len, | 11742 intptr_t len, |
11683 void* peer, | 11743 void* peer, |
11684 Dart_PeerFinalizer callback, | 11744 Dart_PeerFinalizer callback, |
11685 Heap::Space space) { | 11745 Heap::Space space) { |
11686 ASSERT(Isolate::Current()->object_store()->external_int16_array_class() != | 11746 ASSERT(Isolate::Current()->object_store()->external_int16_array_class() != |
11687 Class::null()); | 11747 Class::null()); |
11688 return NewExternalImpl<ExternalInt16Array, RawExternalInt16Array>( | 11748 return NewExternalImpl<ExternalInt16Array, RawExternalInt16Array>( |
11689 kClassId, data, len, peer, callback, space); | 11749 kClassId, data, len, peer, callback, space); |
11690 } | 11750 } |
(...skipping 424 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
12115 } | 12175 } |
12116 return result.raw(); | 12176 return result.raw(); |
12117 } | 12177 } |
12118 | 12178 |
12119 | 12179 |
12120 const char* WeakProperty::ToCString() const { | 12180 const char* WeakProperty::ToCString() const { |
12121 return "_WeakProperty"; | 12181 return "_WeakProperty"; |
12122 } | 12182 } |
12123 | 12183 |
12124 } // namespace dart | 12184 } // namespace dart |
OLD | NEW |