| 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 patch class Int8List { | 5 patch class Int8List { |
| 6 /* patch */ factory Int8List(int length) { | 6 /* patch */ factory Int8List(int length) { |
| 7 return new _Int8Array(length); | 7 return new _Int8Array(length); |
| 8 } | 8 } |
| 9 | 9 |
| 10 /* patch */ factory Int8List.transferable(int length) { | 10 /* patch */ factory Int8List.transferable(int length) { |
| (...skipping 307 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 318 void addAll(Iterable value) { | 318 void addAll(Iterable value) { |
| 319 throw new UnsupportedError( | 319 throw new UnsupportedError( |
| 320 "Cannot add to a non-extendable array"); | 320 "Cannot add to a non-extendable array"); |
| 321 } | 321 } |
| 322 | 322 |
| 323 void sort([int compare(var a, var b)]) { | 323 void sort([int compare(var a, var b)]) { |
| 324 return IterableMixinWorkaround.sortList(this, compare); | 324 return IterableMixinWorkaround.sortList(this, compare); |
| 325 } | 325 } |
| 326 | 326 |
| 327 int indexOf(element, [int start = 0]) { | 327 int indexOf(element, [int start = 0]) { |
| 328 return IterableMixinWorkaround.indexOfList(this, element, start); | 328 return Arrays.indexOf(this, element, start, this.length); |
| 329 } | 329 } |
| 330 | 330 |
| 331 int lastIndexOf(element, [int start = null]) { | 331 int lastIndexOf(element, [int start = null]) { |
| 332 return IterableMixinWorkaround.lastIndexOfList(this, element, start); | 332 if (start == null) start = length - 1; |
| 333 return Arrays.lastIndexOf(this, element, start); |
| 333 } | 334 } |
| 334 | 335 |
| 335 void clear() { | 336 void clear() { |
| 336 throw new UnsupportedError( | 337 throw new UnsupportedError( |
| 337 "Cannot remove from a non-extendable array"); | 338 "Cannot remove from a non-extendable array"); |
| 338 } | 339 } |
| 339 | 340 |
| 340 int removeLast() { | 341 int removeLast() { |
| 341 throw new UnsupportedError( | 342 throw new UnsupportedError( |
| 342 "Cannot remove from a non-extendable array"); | 343 "Cannot remove from a non-extendable array"); |
| (...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 563 return result; | 564 return result; |
| 564 } | 565 } |
| 565 | 566 |
| 566 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 567 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 567 if (from is _Int8Array) { | 568 if (from is _Int8Array) { |
| 568 _setRange(start * _BYTES_PER_ELEMENT, | 569 _setRange(start * _BYTES_PER_ELEMENT, |
| 569 length * _BYTES_PER_ELEMENT, | 570 length * _BYTES_PER_ELEMENT, |
| 570 from, | 571 from, |
| 571 startFrom * _BYTES_PER_ELEMENT); | 572 startFrom * _BYTES_PER_ELEMENT); |
| 572 } else { | 573 } else { |
| 573 IterableMixinWorkaround.setRangeList( | 574 Arrays.copy(from, startFrom, this, start, length); |
| 574 this, start, length, from, startFrom); | |
| 575 } | 575 } |
| 576 } | 576 } |
| 577 | 577 |
| 578 String toString() { | 578 String toString() { |
| 579 return Collections.collectionToString(this); | 579 return Collections.collectionToString(this); |
| 580 } | 580 } |
| 581 | 581 |
| 582 int bytesPerElement() { | 582 int bytesPerElement() { |
| 583 return _BYTES_PER_ELEMENT; | 583 return _BYTES_PER_ELEMENT; |
| 584 } | 584 } |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 628 } | 628 } |
| 629 | 629 |
| 630 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 630 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 631 if (from is _Uint8Array || from is _ExternalUint8Array || | 631 if (from is _Uint8Array || from is _ExternalUint8Array || |
| 632 from is _Uint8ClampedArray || from is _ExternalUint8ClampedArray) { | 632 from is _Uint8ClampedArray || from is _ExternalUint8ClampedArray) { |
| 633 _setRange(start * _BYTES_PER_ELEMENT, | 633 _setRange(start * _BYTES_PER_ELEMENT, |
| 634 length * _BYTES_PER_ELEMENT, | 634 length * _BYTES_PER_ELEMENT, |
| 635 from, | 635 from, |
| 636 startFrom * _BYTES_PER_ELEMENT); | 636 startFrom * _BYTES_PER_ELEMENT); |
| 637 } else { | 637 } else { |
| 638 IterableMixinWorkaround.setRangeList( | 638 Arrays.copy(from, startFrom, this, start, length); |
| 639 this, start, length, from, startFrom); | |
| 640 } | 639 } |
| 641 } | 640 } |
| 642 | 641 |
| 643 String toString() { | 642 String toString() { |
| 644 return Collections.collectionToString(this); | 643 return Collections.collectionToString(this); |
| 645 } | 644 } |
| 646 | 645 |
| 647 int bytesPerElement() { | 646 int bytesPerElement() { |
| 648 return _BYTES_PER_ELEMENT; | 647 return _BYTES_PER_ELEMENT; |
| 649 } | 648 } |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 694 } | 693 } |
| 695 | 694 |
| 696 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 695 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 697 if (from is _Uint8Array || from is _ExternalUint8Array || | 696 if (from is _Uint8Array || from is _ExternalUint8Array || |
| 698 from is _Uint8ClampedArray || from is _ExternalUint8ClampedArray) { | 697 from is _Uint8ClampedArray || from is _ExternalUint8ClampedArray) { |
| 699 _setRange(start * _BYTES_PER_ELEMENT, | 698 _setRange(start * _BYTES_PER_ELEMENT, |
| 700 length * _BYTES_PER_ELEMENT, | 699 length * _BYTES_PER_ELEMENT, |
| 701 from, | 700 from, |
| 702 startFrom * _BYTES_PER_ELEMENT); | 701 startFrom * _BYTES_PER_ELEMENT); |
| 703 } else { | 702 } else { |
| 704 IterableMixinWorkaround.setRangeList( | 703 Arrays.copy(from, startFrom, this, start, length); |
| 705 this, start, length, from, startFrom); | |
| 706 } | 704 } |
| 707 } | 705 } |
| 708 | 706 |
| 709 String toString() { | 707 String toString() { |
| 710 return Collections.collectionToString(this); | 708 return Collections.collectionToString(this); |
| 711 } | 709 } |
| 712 | 710 |
| 713 int bytesPerElement() { | 711 int bytesPerElement() { |
| 714 return _BYTES_PER_ELEMENT; | 712 return _BYTES_PER_ELEMENT; |
| 715 } | 713 } |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 758 return result; | 756 return result; |
| 759 } | 757 } |
| 760 | 758 |
| 761 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 759 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 762 if (from is _Int16Array) { | 760 if (from is _Int16Array) { |
| 763 _setRange(start * _BYTES_PER_ELEMENT, | 761 _setRange(start * _BYTES_PER_ELEMENT, |
| 764 length * _BYTES_PER_ELEMENT, | 762 length * _BYTES_PER_ELEMENT, |
| 765 from, | 763 from, |
| 766 startFrom * _BYTES_PER_ELEMENT); | 764 startFrom * _BYTES_PER_ELEMENT); |
| 767 } else { | 765 } else { |
| 768 IterableMixinWorkaround.setRangeList( | 766 Arrays.copy(from, startFrom, this, start, length); |
| 769 this, start, length, from, startFrom); | |
| 770 } | 767 } |
| 771 } | 768 } |
| 772 | 769 |
| 773 String toString() { | 770 String toString() { |
| 774 return Collections.collectionToString(this); | 771 return Collections.collectionToString(this); |
| 775 } | 772 } |
| 776 | 773 |
| 777 int bytesPerElement() { | 774 int bytesPerElement() { |
| 778 return _BYTES_PER_ELEMENT; | 775 return _BYTES_PER_ELEMENT; |
| 779 } | 776 } |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 822 return result; | 819 return result; |
| 823 } | 820 } |
| 824 | 821 |
| 825 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 822 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 826 if (from is _Uint16Array) { | 823 if (from is _Uint16Array) { |
| 827 _setRange(start * _BYTES_PER_ELEMENT, | 824 _setRange(start * _BYTES_PER_ELEMENT, |
| 828 length * _BYTES_PER_ELEMENT, | 825 length * _BYTES_PER_ELEMENT, |
| 829 from, | 826 from, |
| 830 startFrom * _BYTES_PER_ELEMENT); | 827 startFrom * _BYTES_PER_ELEMENT); |
| 831 } else { | 828 } else { |
| 832 IterableMixinWorkaround.setRangeList( | 829 Arrays.copy(from, startFrom, this, start, length); |
| 833 this, start, length, from, startFrom); | |
| 834 } | 830 } |
| 835 } | 831 } |
| 836 | 832 |
| 837 String toString() { | 833 String toString() { |
| 838 return Collections.collectionToString(this); | 834 return Collections.collectionToString(this); |
| 839 } | 835 } |
| 840 | 836 |
| 841 int bytesPerElement() { | 837 int bytesPerElement() { |
| 842 return _BYTES_PER_ELEMENT; | 838 return _BYTES_PER_ELEMENT; |
| 843 } | 839 } |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 886 return result; | 882 return result; |
| 887 } | 883 } |
| 888 | 884 |
| 889 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 885 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 890 if (from is _Int32Array) { | 886 if (from is _Int32Array) { |
| 891 _setRange(start * _BYTES_PER_ELEMENT, | 887 _setRange(start * _BYTES_PER_ELEMENT, |
| 892 length * _BYTES_PER_ELEMENT, | 888 length * _BYTES_PER_ELEMENT, |
| 893 from, | 889 from, |
| 894 startFrom * _BYTES_PER_ELEMENT); | 890 startFrom * _BYTES_PER_ELEMENT); |
| 895 } else { | 891 } else { |
| 896 IterableMixinWorkaround.setRangeList( | 892 Arrays.copy(from, startFrom, this, start, length); |
| 897 this, start, length, from, startFrom); | |
| 898 } | 893 } |
| 899 } | 894 } |
| 900 | 895 |
| 901 String toString() { | 896 String toString() { |
| 902 return Collections.collectionToString(this); | 897 return Collections.collectionToString(this); |
| 903 } | 898 } |
| 904 | 899 |
| 905 int bytesPerElement() { | 900 int bytesPerElement() { |
| 906 return _BYTES_PER_ELEMENT; | 901 return _BYTES_PER_ELEMENT; |
| 907 } | 902 } |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 951 return result; | 946 return result; |
| 952 } | 947 } |
| 953 | 948 |
| 954 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 949 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 955 if (from is _Uint32Array) { | 950 if (from is _Uint32Array) { |
| 956 _setRange(start * _BYTES_PER_ELEMENT, | 951 _setRange(start * _BYTES_PER_ELEMENT, |
| 957 length * _BYTES_PER_ELEMENT, | 952 length * _BYTES_PER_ELEMENT, |
| 958 from, | 953 from, |
| 959 startFrom * _BYTES_PER_ELEMENT); | 954 startFrom * _BYTES_PER_ELEMENT); |
| 960 } else { | 955 } else { |
| 961 IterableMixinWorkaround.setRangeList( | 956 Arrays.copy(from, startFrom, this, start, length); |
| 962 this, start, length, from, startFrom); | |
| 963 } | 957 } |
| 964 } | 958 } |
| 965 | 959 |
| 966 String toString() { | 960 String toString() { |
| 967 return Collections.collectionToString(this); | 961 return Collections.collectionToString(this); |
| 968 } | 962 } |
| 969 | 963 |
| 970 int bytesPerElement() { | 964 int bytesPerElement() { |
| 971 return _BYTES_PER_ELEMENT; | 965 return _BYTES_PER_ELEMENT; |
| 972 } | 966 } |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1015 return result; | 1009 return result; |
| 1016 } | 1010 } |
| 1017 | 1011 |
| 1018 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 1012 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 1019 if (from is _Int64Array) { | 1013 if (from is _Int64Array) { |
| 1020 _setRange(start * _BYTES_PER_ELEMENT, | 1014 _setRange(start * _BYTES_PER_ELEMENT, |
| 1021 length * _BYTES_PER_ELEMENT, | 1015 length * _BYTES_PER_ELEMENT, |
| 1022 from, | 1016 from, |
| 1023 startFrom * _BYTES_PER_ELEMENT); | 1017 startFrom * _BYTES_PER_ELEMENT); |
| 1024 } else { | 1018 } else { |
| 1025 IterableMixinWorkaround.setRangeList( | 1019 Arrays.copy(from, startFrom, this, start, length); |
| 1026 this, start, length, from, startFrom); | |
| 1027 } | 1020 } |
| 1028 } | 1021 } |
| 1029 | 1022 |
| 1030 String toString() { | 1023 String toString() { |
| 1031 return Collections.collectionToString(this); | 1024 return Collections.collectionToString(this); |
| 1032 } | 1025 } |
| 1033 | 1026 |
| 1034 int bytesPerElement() { | 1027 int bytesPerElement() { |
| 1035 return _BYTES_PER_ELEMENT; | 1028 return _BYTES_PER_ELEMENT; |
| 1036 } | 1029 } |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1079 return result; | 1072 return result; |
| 1080 } | 1073 } |
| 1081 | 1074 |
| 1082 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 1075 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 1083 if (from is _Uint64Array) { | 1076 if (from is _Uint64Array) { |
| 1084 _setRange(start * _BYTES_PER_ELEMENT, | 1077 _setRange(start * _BYTES_PER_ELEMENT, |
| 1085 length * _BYTES_PER_ELEMENT, | 1078 length * _BYTES_PER_ELEMENT, |
| 1086 from, | 1079 from, |
| 1087 startFrom * _BYTES_PER_ELEMENT); | 1080 startFrom * _BYTES_PER_ELEMENT); |
| 1088 } else { | 1081 } else { |
| 1089 IterableMixinWorkaround.setRangeList( | 1082 Arrays.copy(from, startFrom, this, start, length); |
| 1090 this, start, length, from, startFrom); | |
| 1091 } | 1083 } |
| 1092 } | 1084 } |
| 1093 | 1085 |
| 1094 String toString() { | 1086 String toString() { |
| 1095 return Collections.collectionToString(this); | 1087 return Collections.collectionToString(this); |
| 1096 } | 1088 } |
| 1097 | 1089 |
| 1098 int bytesPerElement() { | 1090 int bytesPerElement() { |
| 1099 return _BYTES_PER_ELEMENT; | 1091 return _BYTES_PER_ELEMENT; |
| 1100 } | 1092 } |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1143 return result; | 1135 return result; |
| 1144 } | 1136 } |
| 1145 | 1137 |
| 1146 void setRange(int start, int length, List<double> from, [int startFrom = 0]) { | 1138 void setRange(int start, int length, List<double> from, [int startFrom = 0]) { |
| 1147 if (from is _Float32Array) { | 1139 if (from is _Float32Array) { |
| 1148 _setRange(start * _BYTES_PER_ELEMENT, | 1140 _setRange(start * _BYTES_PER_ELEMENT, |
| 1149 length * _BYTES_PER_ELEMENT, | 1141 length * _BYTES_PER_ELEMENT, |
| 1150 from, | 1142 from, |
| 1151 startFrom * _BYTES_PER_ELEMENT); | 1143 startFrom * _BYTES_PER_ELEMENT); |
| 1152 } else { | 1144 } else { |
| 1153 IterableMixinWorkaround.setRangeList( | 1145 Arrays.copy(from, startFrom, this, start, length); |
| 1154 this, start, length, from, startFrom); | |
| 1155 } | 1146 } |
| 1156 } | 1147 } |
| 1157 | 1148 |
| 1158 String toString() { | 1149 String toString() { |
| 1159 return Collections.collectionToString(this); | 1150 return Collections.collectionToString(this); |
| 1160 } | 1151 } |
| 1161 | 1152 |
| 1162 int bytesPerElement() { | 1153 int bytesPerElement() { |
| 1163 return _BYTES_PER_ELEMENT; | 1154 return _BYTES_PER_ELEMENT; |
| 1164 } | 1155 } |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1207 return result; | 1198 return result; |
| 1208 } | 1199 } |
| 1209 | 1200 |
| 1210 void setRange(int start, int length, List<double> from, [int startFrom = 0]) { | 1201 void setRange(int start, int length, List<double> from, [int startFrom = 0]) { |
| 1211 if (from is _Float64Array) { | 1202 if (from is _Float64Array) { |
| 1212 _setRange(start * _BYTES_PER_ELEMENT, | 1203 _setRange(start * _BYTES_PER_ELEMENT, |
| 1213 length * _BYTES_PER_ELEMENT, | 1204 length * _BYTES_PER_ELEMENT, |
| 1214 from, | 1205 from, |
| 1215 startFrom * _BYTES_PER_ELEMENT); | 1206 startFrom * _BYTES_PER_ELEMENT); |
| 1216 } else { | 1207 } else { |
| 1217 IterableMixinWorkaround.setRangeList( | 1208 Arrays.copy(from, startFrom, this, start, length); |
| 1218 this, start, length, from, startFrom); | |
| 1219 } | 1209 } |
| 1220 } | 1210 } |
| 1221 | 1211 |
| 1222 String toString() { | 1212 String toString() { |
| 1223 return Collections.collectionToString(this); | 1213 return Collections.collectionToString(this); |
| 1224 } | 1214 } |
| 1225 | 1215 |
| 1226 int bytesPerElement() { | 1216 int bytesPerElement() { |
| 1227 return _BYTES_PER_ELEMENT; | 1217 return _BYTES_PER_ELEMENT; |
| 1228 } | 1218 } |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1260 return result; | 1250 return result; |
| 1261 } | 1251 } |
| 1262 | 1252 |
| 1263 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 1253 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 1264 if (from is _ExternalInt8Array) { | 1254 if (from is _ExternalInt8Array) { |
| 1265 _setRange(start * _BYTES_PER_ELEMENT, | 1255 _setRange(start * _BYTES_PER_ELEMENT, |
| 1266 length * _BYTES_PER_ELEMENT, | 1256 length * _BYTES_PER_ELEMENT, |
| 1267 from, | 1257 from, |
| 1268 startFrom * _BYTES_PER_ELEMENT); | 1258 startFrom * _BYTES_PER_ELEMENT); |
| 1269 } else { | 1259 } else { |
| 1270 IterableMixinWorkaround.setRangeList( | 1260 Arrays.copy(from, startFrom, this, start, length); |
| 1271 this, start, length, from, startFrom); | |
| 1272 } | 1261 } |
| 1273 } | 1262 } |
| 1274 | 1263 |
| 1275 String toString() { | 1264 String toString() { |
| 1276 return Collections.collectionToString(this); | 1265 return Collections.collectionToString(this); |
| 1277 } | 1266 } |
| 1278 | 1267 |
| 1279 int bytesPerElement() { | 1268 int bytesPerElement() { |
| 1280 return _BYTES_PER_ELEMENT; | 1269 return _BYTES_PER_ELEMENT; |
| 1281 } | 1270 } |
| (...skipping 29 matching lines...) Expand all Loading... |
| 1311 return result; | 1300 return result; |
| 1312 } | 1301 } |
| 1313 | 1302 |
| 1314 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 1303 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 1315 if (from is _ExternalUint8Array || from is _Uint8Array) { | 1304 if (from is _ExternalUint8Array || from is _Uint8Array) { |
| 1316 _setRange(start * _BYTES_PER_ELEMENT, | 1305 _setRange(start * _BYTES_PER_ELEMENT, |
| 1317 length * _BYTES_PER_ELEMENT, | 1306 length * _BYTES_PER_ELEMENT, |
| 1318 from, | 1307 from, |
| 1319 startFrom * _BYTES_PER_ELEMENT); | 1308 startFrom * _BYTES_PER_ELEMENT); |
| 1320 } else { | 1309 } else { |
| 1321 IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom)
; | 1310 Arrays.copy(from, startFrom, this, start, length); |
| 1322 } | 1311 } |
| 1323 } | 1312 } |
| 1324 | 1313 |
| 1325 String toString() { | 1314 String toString() { |
| 1326 return Collections.collectionToString(this); | 1315 return Collections.collectionToString(this); |
| 1327 } | 1316 } |
| 1328 | 1317 |
| 1329 int bytesPerElement() { | 1318 int bytesPerElement() { |
| 1330 return _BYTES_PER_ELEMENT; | 1319 return _BYTES_PER_ELEMENT; |
| 1331 } | 1320 } |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1363 return result; | 1352 return result; |
| 1364 } | 1353 } |
| 1365 | 1354 |
| 1366 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 1355 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 1367 if (from is _ExternalUint8ClampedArray || from is _Uint8ClampedArray) { | 1356 if (from is _ExternalUint8ClampedArray || from is _Uint8ClampedArray) { |
| 1368 _setRange(start * _BYTES_PER_ELEMENT, | 1357 _setRange(start * _BYTES_PER_ELEMENT, |
| 1369 length * _BYTES_PER_ELEMENT, | 1358 length * _BYTES_PER_ELEMENT, |
| 1370 from, | 1359 from, |
| 1371 startFrom * _BYTES_PER_ELEMENT); | 1360 startFrom * _BYTES_PER_ELEMENT); |
| 1372 } else { | 1361 } else { |
| 1373 IterableMixinWorkaround.setRangeList( | 1362 Arrays.copy(from, startFrom, this, start, length); |
| 1374 this, start, length, from, startFrom); | |
| 1375 } | 1363 } |
| 1376 } | 1364 } |
| 1377 | 1365 |
| 1378 String toString() { | 1366 String toString() { |
| 1379 return Collections.collectionToString(this); | 1367 return Collections.collectionToString(this); |
| 1380 } | 1368 } |
| 1381 | 1369 |
| 1382 int bytesPerElement() { | 1370 int bytesPerElement() { |
| 1383 return _BYTES_PER_ELEMENT; | 1371 return _BYTES_PER_ELEMENT; |
| 1384 } | 1372 } |
| (...skipping 29 matching lines...) Expand all Loading... |
| 1414 return result; | 1402 return result; |
| 1415 } | 1403 } |
| 1416 | 1404 |
| 1417 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 1405 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 1418 if (from is _ExternalInt16Array) { | 1406 if (from is _ExternalInt16Array) { |
| 1419 _setRange(start * _BYTES_PER_ELEMENT, | 1407 _setRange(start * _BYTES_PER_ELEMENT, |
| 1420 length * _BYTES_PER_ELEMENT, | 1408 length * _BYTES_PER_ELEMENT, |
| 1421 from, | 1409 from, |
| 1422 startFrom * _BYTES_PER_ELEMENT); | 1410 startFrom * _BYTES_PER_ELEMENT); |
| 1423 } else { | 1411 } else { |
| 1424 IterableMixinWorkaround.setRangeList( | 1412 Arrays.copy(from, startFrom, this, start, length); |
| 1425 this, start, length, from, startFrom); | |
| 1426 } | 1413 } |
| 1427 } | 1414 } |
| 1428 | 1415 |
| 1429 String toString() { | 1416 String toString() { |
| 1430 return Collections.collectionToString(this); | 1417 return Collections.collectionToString(this); |
| 1431 } | 1418 } |
| 1432 | 1419 |
| 1433 int bytesPerElement() { | 1420 int bytesPerElement() { |
| 1434 return _BYTES_PER_ELEMENT; | 1421 return _BYTES_PER_ELEMENT; |
| 1435 } | 1422 } |
| (...skipping 29 matching lines...) Expand all Loading... |
| 1465 return result; | 1452 return result; |
| 1466 } | 1453 } |
| 1467 | 1454 |
| 1468 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 1455 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 1469 if (from is _ExternalUint16Array) { | 1456 if (from is _ExternalUint16Array) { |
| 1470 _setRange(start * _BYTES_PER_ELEMENT, | 1457 _setRange(start * _BYTES_PER_ELEMENT, |
| 1471 length * _BYTES_PER_ELEMENT, | 1458 length * _BYTES_PER_ELEMENT, |
| 1472 from, | 1459 from, |
| 1473 startFrom * _BYTES_PER_ELEMENT); | 1460 startFrom * _BYTES_PER_ELEMENT); |
| 1474 } else { | 1461 } else { |
| 1475 IterableMixinWorkaround.setRangeList( | 1462 Arrays.copy(from, startFrom, this, start, length); |
| 1476 this, start, length, from, startFrom); | |
| 1477 } | 1463 } |
| 1478 } | 1464 } |
| 1479 | 1465 |
| 1480 String toString() { | 1466 String toString() { |
| 1481 return Collections.collectionToString(this); | 1467 return Collections.collectionToString(this); |
| 1482 } | 1468 } |
| 1483 | 1469 |
| 1484 int bytesPerElement() { | 1470 int bytesPerElement() { |
| 1485 return _BYTES_PER_ELEMENT; | 1471 return _BYTES_PER_ELEMENT; |
| 1486 } | 1472 } |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1518 return result; | 1504 return result; |
| 1519 } | 1505 } |
| 1520 | 1506 |
| 1521 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 1507 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 1522 if (from is _ExternalInt32Array) { | 1508 if (from is _ExternalInt32Array) { |
| 1523 _setRange(start * _BYTES_PER_ELEMENT, | 1509 _setRange(start * _BYTES_PER_ELEMENT, |
| 1524 length * _BYTES_PER_ELEMENT, | 1510 length * _BYTES_PER_ELEMENT, |
| 1525 from, | 1511 from, |
| 1526 startFrom * _BYTES_PER_ELEMENT); | 1512 startFrom * _BYTES_PER_ELEMENT); |
| 1527 } else { | 1513 } else { |
| 1528 IterableMixinWorkaround.setRangeList( | 1514 Arrays.copy(from, startFrom, this, start, length); |
| 1529 this, start, length, from, startFrom); | |
| 1530 } | 1515 } |
| 1531 } | 1516 } |
| 1532 | 1517 |
| 1533 String toString() { | 1518 String toString() { |
| 1534 return Collections.collectionToString(this); | 1519 return Collections.collectionToString(this); |
| 1535 } | 1520 } |
| 1536 | 1521 |
| 1537 int bytesPerElement() { | 1522 int bytesPerElement() { |
| 1538 return _BYTES_PER_ELEMENT; | 1523 return _BYTES_PER_ELEMENT; |
| 1539 } | 1524 } |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1571 return result; | 1556 return result; |
| 1572 } | 1557 } |
| 1573 | 1558 |
| 1574 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 1559 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 1575 if (from is _ExternalUint32Array) { | 1560 if (from is _ExternalUint32Array) { |
| 1576 _setRange(start * _BYTES_PER_ELEMENT, | 1561 _setRange(start * _BYTES_PER_ELEMENT, |
| 1577 length * _BYTES_PER_ELEMENT, | 1562 length * _BYTES_PER_ELEMENT, |
| 1578 from, | 1563 from, |
| 1579 startFrom * _BYTES_PER_ELEMENT); | 1564 startFrom * _BYTES_PER_ELEMENT); |
| 1580 } else { | 1565 } else { |
| 1581 IterableMixinWorkaround.setRangeList( | 1566 Arrays.copy(from, startFrom, this, start, length); |
| 1582 this, start, length, from, startFrom); | |
| 1583 } | 1567 } |
| 1584 } | 1568 } |
| 1585 | 1569 |
| 1586 String toString() { | 1570 String toString() { |
| 1587 return Collections.collectionToString(this); | 1571 return Collections.collectionToString(this); |
| 1588 } | 1572 } |
| 1589 | 1573 |
| 1590 int bytesPerElement() { | 1574 int bytesPerElement() { |
| 1591 return _BYTES_PER_ELEMENT; | 1575 return _BYTES_PER_ELEMENT; |
| 1592 } | 1576 } |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1624 return result; | 1608 return result; |
| 1625 } | 1609 } |
| 1626 | 1610 |
| 1627 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 1611 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 1628 if (from is _ExternalInt64Array) { | 1612 if (from is _ExternalInt64Array) { |
| 1629 _setRange(start * _BYTES_PER_ELEMENT, | 1613 _setRange(start * _BYTES_PER_ELEMENT, |
| 1630 length * _BYTES_PER_ELEMENT, | 1614 length * _BYTES_PER_ELEMENT, |
| 1631 from, | 1615 from, |
| 1632 startFrom * _BYTES_PER_ELEMENT); | 1616 startFrom * _BYTES_PER_ELEMENT); |
| 1633 } else { | 1617 } else { |
| 1634 IterableMixinWorkaround.setRangeList( | 1618 Arrays.copy(from, startFrom, this, start, length); |
| 1635 this, start, length, from, startFrom); | |
| 1636 } | 1619 } |
| 1637 } | 1620 } |
| 1638 | 1621 |
| 1639 String toString() { | 1622 String toString() { |
| 1640 return Collections.collectionToString(this); | 1623 return Collections.collectionToString(this); |
| 1641 } | 1624 } |
| 1642 | 1625 |
| 1643 int bytesPerElement() { | 1626 int bytesPerElement() { |
| 1644 return _BYTES_PER_ELEMENT; | 1627 return _BYTES_PER_ELEMENT; |
| 1645 } | 1628 } |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1677 return result; | 1660 return result; |
| 1678 } | 1661 } |
| 1679 | 1662 |
| 1680 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 1663 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 1681 if (from is _ExternalUint64Array) { | 1664 if (from is _ExternalUint64Array) { |
| 1682 _setRange(start * _BYTES_PER_ELEMENT, | 1665 _setRange(start * _BYTES_PER_ELEMENT, |
| 1683 length * _BYTES_PER_ELEMENT, | 1666 length * _BYTES_PER_ELEMENT, |
| 1684 from, | 1667 from, |
| 1685 startFrom * _BYTES_PER_ELEMENT); | 1668 startFrom * _BYTES_PER_ELEMENT); |
| 1686 } else { | 1669 } else { |
| 1687 IterableMixinWorkaround.setRangeList( | 1670 Arrays.copy(from, startFrom, this, start, length); |
| 1688 this, start, length, from, startFrom); | |
| 1689 } | 1671 } |
| 1690 } | 1672 } |
| 1691 | 1673 |
| 1692 String toString() { | 1674 String toString() { |
| 1693 return Collections.collectionToString(this); | 1675 return Collections.collectionToString(this); |
| 1694 } | 1676 } |
| 1695 | 1677 |
| 1696 int bytesPerElement() { | 1678 int bytesPerElement() { |
| 1697 return _BYTES_PER_ELEMENT; | 1679 return _BYTES_PER_ELEMENT; |
| 1698 } | 1680 } |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1730 return result; | 1712 return result; |
| 1731 } | 1713 } |
| 1732 | 1714 |
| 1733 void setRange(int start, int length, List<double> from, [int startFrom = 0]) { | 1715 void setRange(int start, int length, List<double> from, [int startFrom = 0]) { |
| 1734 if (from is _ExternalFloat32Array) { | 1716 if (from is _ExternalFloat32Array) { |
| 1735 _setRange(start * _BYTES_PER_ELEMENT, | 1717 _setRange(start * _BYTES_PER_ELEMENT, |
| 1736 length * _BYTES_PER_ELEMENT, | 1718 length * _BYTES_PER_ELEMENT, |
| 1737 from, | 1719 from, |
| 1738 startFrom * _BYTES_PER_ELEMENT); | 1720 startFrom * _BYTES_PER_ELEMENT); |
| 1739 } else { | 1721 } else { |
| 1740 IterableMixinWorkaround.setRangeList( | 1722 Arrays.copy(from, startFrom, this, start, length); |
| 1741 this, start, length, from, startFrom); | |
| 1742 } | 1723 } |
| 1743 } | 1724 } |
| 1744 | 1725 |
| 1745 String toString() { | 1726 String toString() { |
| 1746 return Collections.collectionToString(this); | 1727 return Collections.collectionToString(this); |
| 1747 } | 1728 } |
| 1748 | 1729 |
| 1749 int bytesPerElement() { | 1730 int bytesPerElement() { |
| 1750 return _BYTES_PER_ELEMENT; | 1731 return _BYTES_PER_ELEMENT; |
| 1751 } | 1732 } |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1783 return result; | 1764 return result; |
| 1784 } | 1765 } |
| 1785 | 1766 |
| 1786 void setRange(int start, int length, List<double> from, [int startFrom = 0]) { | 1767 void setRange(int start, int length, List<double> from, [int startFrom = 0]) { |
| 1787 if (from is _ExternalFloat64Array) { | 1768 if (from is _ExternalFloat64Array) { |
| 1788 _setRange(start * _BYTES_PER_ELEMENT, | 1769 _setRange(start * _BYTES_PER_ELEMENT, |
| 1789 length * _BYTES_PER_ELEMENT, | 1770 length * _BYTES_PER_ELEMENT, |
| 1790 from, | 1771 from, |
| 1791 startFrom * _BYTES_PER_ELEMENT); | 1772 startFrom * _BYTES_PER_ELEMENT); |
| 1792 } else { | 1773 } else { |
| 1793 IterableMixinWorkaround.setRangeList( | 1774 Arrays.copy(from, startFrom, this, start, length); |
| 1794 this, start, length, from, startFrom); | |
| 1795 } | 1775 } |
| 1796 } | 1776 } |
| 1797 | 1777 |
| 1798 String toString() { | 1778 String toString() { |
| 1799 return Collections.collectionToString(this); | 1779 return Collections.collectionToString(this); |
| 1800 } | 1780 } |
| 1801 | 1781 |
| 1802 int bytesPerElement() { | 1782 int bytesPerElement() { |
| 1803 return _BYTES_PER_ELEMENT; | 1783 return _BYTES_PER_ELEMENT; |
| 1804 } | 1784 } |
| (...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1986 void addAll(Iterable value) { | 1966 void addAll(Iterable value) { |
| 1987 throw new UnsupportedError( | 1967 throw new UnsupportedError( |
| 1988 "Cannot add to a non-extendable array"); | 1968 "Cannot add to a non-extendable array"); |
| 1989 } | 1969 } |
| 1990 | 1970 |
| 1991 void sort([int compare(var a, var b)]) { | 1971 void sort([int compare(var a, var b)]) { |
| 1992 return IterableMixinWorkaround.sortList(this, compare); | 1972 return IterableMixinWorkaround.sortList(this, compare); |
| 1993 } | 1973 } |
| 1994 | 1974 |
| 1995 int indexOf(element, [int start = 0]) { | 1975 int indexOf(element, [int start = 0]) { |
| 1996 return IterableMixinWorkaround.indexOfList(this, element, start); | 1976 return Arrays.indexOf(this, element, start, this.length); |
| 1997 } | 1977 } |
| 1998 | 1978 |
| 1999 int lastIndexOf(element, [int start = null]) { | 1979 int lastIndexOf(element, [int start = null]) { |
| 2000 return IterableMixinWorkaround.lastIndexOfList(this, element, start); | 1980 if (start == null) start = length - 1; |
| 1981 return Arrays.lastIndexOf(this, element, start); |
| 2001 } | 1982 } |
| 2002 | 1983 |
| 2003 void clear() { | 1984 void clear() { |
| 2004 throw new UnsupportedError( | 1985 throw new UnsupportedError( |
| 2005 "Cannot remove from a non-extendable array"); | 1986 "Cannot remove from a non-extendable array"); |
| 2006 } | 1987 } |
| 2007 | 1988 |
| 2008 int removeLast() { | 1989 int removeLast() { |
| 2009 throw new UnsupportedError( | 1990 throw new UnsupportedError( |
| 2010 "Cannot remove from a non-extendable array"); | 1991 "Cannot remove from a non-extendable array"); |
| (...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2106 } | 2087 } |
| 2107 | 2088 |
| 2108 List<int> getRange(int start, int length) { | 2089 List<int> getRange(int start, int length) { |
| 2109 _rangeCheck(this.length, start, length); | 2090 _rangeCheck(this.length, start, length); |
| 2110 List<int> result = new Int8List(length); | 2091 List<int> result = new Int8List(length); |
| 2111 result.setRange(0, length, this, start); | 2092 result.setRange(0, length, this, start); |
| 2112 return result; | 2093 return result; |
| 2113 } | 2094 } |
| 2114 | 2095 |
| 2115 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 2096 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 2116 IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom); | 2097 Arrays.copy(from, startFrom, this, start, length); |
| 2117 } | 2098 } |
| 2118 | 2099 |
| 2119 String toString() { | 2100 String toString() { |
| 2120 return Collections.collectionToString(this); | 2101 return Collections.collectionToString(this); |
| 2121 } | 2102 } |
| 2122 | 2103 |
| 2123 int bytesPerElement() { | 2104 int bytesPerElement() { |
| 2124 return _BYTES_PER_ELEMENT; | 2105 return _BYTES_PER_ELEMENT; |
| 2125 } | 2106 } |
| 2126 | 2107 |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2170 } | 2151 } |
| 2171 | 2152 |
| 2172 List<int> getRange(int start, int length) { | 2153 List<int> getRange(int start, int length) { |
| 2173 _rangeCheck(this.length, start, length); | 2154 _rangeCheck(this.length, start, length); |
| 2174 List<int> result = new Uint8List(length); | 2155 List<int> result = new Uint8List(length); |
| 2175 result.setRange(0, length, this, start); | 2156 result.setRange(0, length, this, start); |
| 2176 return result; | 2157 return result; |
| 2177 } | 2158 } |
| 2178 | 2159 |
| 2179 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 2160 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 2180 IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom); | 2161 Arrays.copy(from, startFrom, this, start, length); |
| 2181 } | 2162 } |
| 2182 | 2163 |
| 2183 String toString() { | 2164 String toString() { |
| 2184 return Collections.collectionToString(this); | 2165 return Collections.collectionToString(this); |
| 2185 } | 2166 } |
| 2186 | 2167 |
| 2187 int bytesPerElement() { | 2168 int bytesPerElement() { |
| 2188 return _BYTES_PER_ELEMENT; | 2169 return _BYTES_PER_ELEMENT; |
| 2189 } | 2170 } |
| 2190 | 2171 |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2234 } | 2215 } |
| 2235 | 2216 |
| 2236 List<int> getRange(int start, int length) { | 2217 List<int> getRange(int start, int length) { |
| 2237 _rangeCheck(this.length, start, length); | 2218 _rangeCheck(this.length, start, length); |
| 2238 List<int> result = new Int16List(length); | 2219 List<int> result = new Int16List(length); |
| 2239 result.setRange(0, length, this, start); | 2220 result.setRange(0, length, this, start); |
| 2240 return result; | 2221 return result; |
| 2241 } | 2222 } |
| 2242 | 2223 |
| 2243 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 2224 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 2244 IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom); | 2225 Arrays.copy(from, startFrom, this, start, length); |
| 2245 } | 2226 } |
| 2246 | 2227 |
| 2247 String toString() { | 2228 String toString() { |
| 2248 return Collections.collectionToString(this); | 2229 return Collections.collectionToString(this); |
| 2249 } | 2230 } |
| 2250 | 2231 |
| 2251 int bytesPerElement() { | 2232 int bytesPerElement() { |
| 2252 return _BYTES_PER_ELEMENT; | 2233 return _BYTES_PER_ELEMENT; |
| 2253 } | 2234 } |
| 2254 | 2235 |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2298 } | 2279 } |
| 2299 | 2280 |
| 2300 List<int> getRange(int start, int length) { | 2281 List<int> getRange(int start, int length) { |
| 2301 _rangeCheck(this.length, start, length); | 2282 _rangeCheck(this.length, start, length); |
| 2302 List<int> result = new Uint16List(length); | 2283 List<int> result = new Uint16List(length); |
| 2303 result.setRange(0, length, this, start); | 2284 result.setRange(0, length, this, start); |
| 2304 return result; | 2285 return result; |
| 2305 } | 2286 } |
| 2306 | 2287 |
| 2307 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 2288 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 2308 IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom); | 2289 Arrays.copy(from, startFrom, this, start, length); |
| 2309 } | 2290 } |
| 2310 | 2291 |
| 2311 String toString() { | 2292 String toString() { |
| 2312 return Collections.collectionToString(this); | 2293 return Collections.collectionToString(this); |
| 2313 } | 2294 } |
| 2314 | 2295 |
| 2315 int bytesPerElement() { | 2296 int bytesPerElement() { |
| 2316 return _BYTES_PER_ELEMENT; | 2297 return _BYTES_PER_ELEMENT; |
| 2317 } | 2298 } |
| 2318 | 2299 |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2362 } | 2343 } |
| 2363 | 2344 |
| 2364 List<int> getRange(int start, int length) { | 2345 List<int> getRange(int start, int length) { |
| 2365 _rangeCheck(this.length, start, length); | 2346 _rangeCheck(this.length, start, length); |
| 2366 List<int> result = new Int32List(length); | 2347 List<int> result = new Int32List(length); |
| 2367 result.setRange(0, length, this, start); | 2348 result.setRange(0, length, this, start); |
| 2368 return result; | 2349 return result; |
| 2369 } | 2350 } |
| 2370 | 2351 |
| 2371 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 2352 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 2372 IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom); | 2353 Arrays.copy(from, startFrom, this, start, length); |
| 2373 } | 2354 } |
| 2374 | 2355 |
| 2375 String toString() { | 2356 String toString() { |
| 2376 return Collections.collectionToString(this); | 2357 return Collections.collectionToString(this); |
| 2377 } | 2358 } |
| 2378 | 2359 |
| 2379 int bytesPerElement() { | 2360 int bytesPerElement() { |
| 2380 return _BYTES_PER_ELEMENT; | 2361 return _BYTES_PER_ELEMENT; |
| 2381 } | 2362 } |
| 2382 | 2363 |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2426 } | 2407 } |
| 2427 | 2408 |
| 2428 List<int> getRange(int start, int length) { | 2409 List<int> getRange(int start, int length) { |
| 2429 _rangeCheck(this.length, start, length); | 2410 _rangeCheck(this.length, start, length); |
| 2430 List<int> result = new Uint32List(length); | 2411 List<int> result = new Uint32List(length); |
| 2431 result.setRange(0, length, this, start); | 2412 result.setRange(0, length, this, start); |
| 2432 return result; | 2413 return result; |
| 2433 } | 2414 } |
| 2434 | 2415 |
| 2435 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 2416 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 2436 IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom); | 2417 Arrays.copy(from, startFrom, this, start, length); |
| 2437 } | 2418 } |
| 2438 | 2419 |
| 2439 String toString() { | 2420 String toString() { |
| 2440 return Collections.collectionToString(this); | 2421 return Collections.collectionToString(this); |
| 2441 } | 2422 } |
| 2442 | 2423 |
| 2443 int bytesPerElement() { | 2424 int bytesPerElement() { |
| 2444 return _BYTES_PER_ELEMENT; | 2425 return _BYTES_PER_ELEMENT; |
| 2445 } | 2426 } |
| 2446 | 2427 |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2490 } | 2471 } |
| 2491 | 2472 |
| 2492 List<int> getRange(int start, int length) { | 2473 List<int> getRange(int start, int length) { |
| 2493 _rangeCheck(this.length, start, length); | 2474 _rangeCheck(this.length, start, length); |
| 2494 List<int> result = new Int64List(length); | 2475 List<int> result = new Int64List(length); |
| 2495 result.setRange(0, length, this, start); | 2476 result.setRange(0, length, this, start); |
| 2496 return result; | 2477 return result; |
| 2497 } | 2478 } |
| 2498 | 2479 |
| 2499 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 2480 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 2500 IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom); | 2481 Arrays.copy(from, startFrom, this, start, length); |
| 2501 } | 2482 } |
| 2502 | 2483 |
| 2503 String toString() { | 2484 String toString() { |
| 2504 return Collections.collectionToString(this); | 2485 return Collections.collectionToString(this); |
| 2505 } | 2486 } |
| 2506 | 2487 |
| 2507 int bytesPerElement() { | 2488 int bytesPerElement() { |
| 2508 return _BYTES_PER_ELEMENT; | 2489 return _BYTES_PER_ELEMENT; |
| 2509 } | 2490 } |
| 2510 | 2491 |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2554 } | 2535 } |
| 2555 | 2536 |
| 2556 List<int> getRange(int start, int length) { | 2537 List<int> getRange(int start, int length) { |
| 2557 _rangeCheck(this.length, start, length); | 2538 _rangeCheck(this.length, start, length); |
| 2558 List<int> result = new Uint64List(length); | 2539 List<int> result = new Uint64List(length); |
| 2559 result.setRange(0, length, this, start); | 2540 result.setRange(0, length, this, start); |
| 2560 return result; | 2541 return result; |
| 2561 } | 2542 } |
| 2562 | 2543 |
| 2563 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { | 2544 void setRange(int start, int length, List<int> from, [int startFrom = 0]) { |
| 2564 IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom); | 2545 Arrays.copy(from, startFrom, this, start, length); |
| 2565 } | 2546 } |
| 2566 | 2547 |
| 2567 String toString() { | 2548 String toString() { |
| 2568 return Collections.collectionToString(this); | 2549 return Collections.collectionToString(this); |
| 2569 } | 2550 } |
| 2570 | 2551 |
| 2571 int bytesPerElement() { | 2552 int bytesPerElement() { |
| 2572 return _BYTES_PER_ELEMENT; | 2553 return _BYTES_PER_ELEMENT; |
| 2573 } | 2554 } |
| 2574 | 2555 |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2618 } | 2599 } |
| 2619 | 2600 |
| 2620 List<double> getRange(int start, int length) { | 2601 List<double> getRange(int start, int length) { |
| 2621 _rangeCheck(this.length, start, length); | 2602 _rangeCheck(this.length, start, length); |
| 2622 List<double> result = new Float32List(length); | 2603 List<double> result = new Float32List(length); |
| 2623 result.setRange(0, length, this, start); | 2604 result.setRange(0, length, this, start); |
| 2624 return result; | 2605 return result; |
| 2625 } | 2606 } |
| 2626 | 2607 |
| 2627 void setRange(int start, int length, List<double> from, [int startFrom = 0]) { | 2608 void setRange(int start, int length, List<double> from, [int startFrom = 0]) { |
| 2628 IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom); | 2609 Arrays.copy(from, startFrom, this, start, length); |
| 2629 } | 2610 } |
| 2630 | 2611 |
| 2631 String toString() { | 2612 String toString() { |
| 2632 return Collections.collectionToString(this); | 2613 return Collections.collectionToString(this); |
| 2633 } | 2614 } |
| 2634 | 2615 |
| 2635 int bytesPerElement() { | 2616 int bytesPerElement() { |
| 2636 return _BYTES_PER_ELEMENT; | 2617 return _BYTES_PER_ELEMENT; |
| 2637 } | 2618 } |
| 2638 | 2619 |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2682 } | 2663 } |
| 2683 | 2664 |
| 2684 List<double> getRange(int start, int length) { | 2665 List<double> getRange(int start, int length) { |
| 2685 _rangeCheck(this.length, start, length); | 2666 _rangeCheck(this.length, start, length); |
| 2686 List<double> result = new Float64List(length); | 2667 List<double> result = new Float64List(length); |
| 2687 result.setRange(0, length, this, start); | 2668 result.setRange(0, length, this, start); |
| 2688 return result; | 2669 return result; |
| 2689 } | 2670 } |
| 2690 | 2671 |
| 2691 void setRange(int start, int length, List<double> from, [int startFrom = 0]) { | 2672 void setRange(int start, int length, List<double> from, [int startFrom = 0]) { |
| 2692 IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom); | 2673 Arrays.copy(from, startFrom, this, start, length); |
| 2693 } | 2674 } |
| 2694 | 2675 |
| 2695 String toString() { | 2676 String toString() { |
| 2696 return Collections.collectionToString(this); | 2677 return Collections.collectionToString(this); |
| 2697 } | 2678 } |
| 2698 | 2679 |
| 2699 int bytesPerElement() { | 2680 int bytesPerElement() { |
| 2700 return _BYTES_PER_ELEMENT; | 2681 return _BYTES_PER_ELEMENT; |
| 2701 } | 2682 } |
| 2702 | 2683 |
| 2703 int lengthInBytes() { | 2684 int lengthInBytes() { |
| 2704 return length * _BYTES_PER_ELEMENT; | 2685 return length * _BYTES_PER_ELEMENT; |
| 2705 } | 2686 } |
| 2706 | 2687 |
| 2707 ByteArray asByteArray([int start = 0, int length]) { | 2688 ByteArray asByteArray([int start = 0, int length]) { |
| 2708 if (length == null) { | 2689 if (length == null) { |
| 2709 length = this.lengthInBytes(); | 2690 length = this.lengthInBytes(); |
| 2710 } | 2691 } |
| 2711 _rangeCheck(this.length, start, length); | 2692 _rangeCheck(this.length, start, length); |
| 2712 return _array.subByteArray(_offset + start, length); | 2693 return _array.subByteArray(_offset + start, length); |
| 2713 } | 2694 } |
| 2714 | 2695 |
| 2715 static const int _BYTES_PER_ELEMENT = 8; | 2696 static const int _BYTES_PER_ELEMENT = 8; |
| 2716 } | 2697 } |
| OLD | NEW |