| Index: runtime/lib/byte_array.dart
|
| diff --git a/runtime/lib/byte_array.dart b/runtime/lib/byte_array.dart
|
| index a85f8435178835c5a9ca61f3ea99a6b5e249bdac..2323fdff747338746a5a18fead09ad6f88b9deaf 100644
|
| --- a/runtime/lib/byte_array.dart
|
| +++ b/runtime/lib/byte_array.dart
|
| @@ -325,12 +325,11 @@ abstract class _ByteArrayBase {
|
| }
|
|
|
| int indexOf(element, [int start = 0]) {
|
| - return Arrays.indexOf(this, element, start, this.length);
|
| + return IterableMixinWorkaround.indexOfList(this, element, start);
|
| }
|
|
|
| int lastIndexOf(element, [int start = null]) {
|
| - if (start == null) start = length - 1;
|
| - return Arrays.lastIndexOf(this, element, start);
|
| + return IterableMixinWorkaround.lastIndexOfList(this, element, start);
|
| }
|
|
|
| void clear() {
|
| @@ -571,7 +570,8 @@ class _Int8Array extends _ByteArrayBase implements Int8List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -635,7 +635,8 @@ class _Uint8Array extends _ByteArrayBase implements Uint8List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -700,7 +701,8 @@ class _Uint8ClampedArray extends _ByteArrayBase implements Uint8ClampedList {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -763,7 +765,8 @@ class _Int16Array extends _ByteArrayBase implements Int16List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -826,7 +829,8 @@ class _Uint16Array extends _ByteArrayBase implements Uint16List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -889,7 +893,8 @@ class _Int32Array extends _ByteArrayBase implements Int32List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -953,7 +958,8 @@ class _Uint32Array extends _ByteArrayBase implements Uint32List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -1016,7 +1022,8 @@ class _Int64Array extends _ByteArrayBase implements Int64List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -1079,7 +1086,8 @@ class _Uint64Array extends _ByteArrayBase implements Uint64List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -1142,7 +1150,8 @@ class _Float32Array extends _ByteArrayBase implements Float32List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -1205,7 +1214,8 @@ class _Float64Array extends _ByteArrayBase implements Float64List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -1257,7 +1267,8 @@ class _ExternalInt8Array extends _ByteArrayBase implements Int8List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -1307,7 +1318,7 @@ class _ExternalUint8Array extends _ByteArrayBase implements Uint8List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -1359,7 +1370,8 @@ class _ExternalUint8ClampedArray
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -1409,7 +1421,8 @@ class _ExternalInt16Array extends _ByteArrayBase implements Int16List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -1459,7 +1472,8 @@ class _ExternalUint16Array extends _ByteArrayBase implements Uint16List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -1511,7 +1525,8 @@ class _ExternalInt32Array extends _ByteArrayBase implements Int32List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -1563,7 +1578,8 @@ class _ExternalUint32Array extends _ByteArrayBase implements Uint32List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -1615,7 +1631,8 @@ class _ExternalInt64Array extends _ByteArrayBase implements Int64List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -1667,7 +1684,8 @@ class _ExternalUint64Array extends _ByteArrayBase implements Uint64List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -1719,7 +1737,8 @@ class _ExternalFloat32Array extends _ByteArrayBase implements Float32List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -1771,7 +1790,8 @@ class _ExternalFloat64Array extends _ByteArrayBase implements Float64List {
|
| from,
|
| startFrom * _BYTES_PER_ELEMENT);
|
| } else {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(
|
| + this, start, length, from, startFrom);
|
| }
|
| }
|
|
|
| @@ -1973,12 +1993,11 @@ class _ByteArrayViewBase extends Collection<int> {
|
| }
|
|
|
| int indexOf(element, [int start = 0]) {
|
| - return Arrays.indexOf(this, element, start, this.length);
|
| + return IterableMixinWorkaround.indexOfList(this, element, start);
|
| }
|
|
|
| int lastIndexOf(element, [int start = null]) {
|
| - if (start == null) start = length - 1;
|
| - return Arrays.lastIndexOf(this, element, start);
|
| + return IterableMixinWorkaround.lastIndexOfList(this, element, start);
|
| }
|
|
|
| void clear() {
|
| @@ -2094,7 +2113,7 @@ class _Int8ArrayView extends _ByteArrayViewBase implements Int8List {
|
| }
|
|
|
| void setRange(int start, int length, List<int> from, [int startFrom = 0]) {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom);
|
| }
|
|
|
| String toString() {
|
| @@ -2158,7 +2177,7 @@ class _Uint8ArrayView extends _ByteArrayViewBase implements Uint8List {
|
| }
|
|
|
| void setRange(int start, int length, List<int> from, [int startFrom = 0]) {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom);
|
| }
|
|
|
| String toString() {
|
| @@ -2222,7 +2241,7 @@ class _Int16ArrayView extends _ByteArrayViewBase implements Int16List {
|
| }
|
|
|
| void setRange(int start, int length, List<int> from, [int startFrom = 0]) {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom);
|
| }
|
|
|
| String toString() {
|
| @@ -2286,7 +2305,7 @@ class _Uint16ArrayView extends _ByteArrayViewBase implements Uint16List {
|
| }
|
|
|
| void setRange(int start, int length, List<int> from, [int startFrom = 0]) {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom);
|
| }
|
|
|
| String toString() {
|
| @@ -2350,7 +2369,7 @@ class _Int32ArrayView extends _ByteArrayViewBase implements Int32List {
|
| }
|
|
|
| void setRange(int start, int length, List<int> from, [int startFrom = 0]) {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom);
|
| }
|
|
|
| String toString() {
|
| @@ -2414,7 +2433,7 @@ class _Uint32ArrayView extends _ByteArrayViewBase implements Uint32List {
|
| }
|
|
|
| void setRange(int start, int length, List<int> from, [int startFrom = 0]) {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom);
|
| }
|
|
|
| String toString() {
|
| @@ -2478,7 +2497,7 @@ class _Int64ArrayView extends _ByteArrayViewBase implements Int64List {
|
| }
|
|
|
| void setRange(int start, int length, List<int> from, [int startFrom = 0]) {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom);
|
| }
|
|
|
| String toString() {
|
| @@ -2542,7 +2561,7 @@ class _Uint64ArrayView extends _ByteArrayViewBase implements Uint64List {
|
| }
|
|
|
| void setRange(int start, int length, List<int> from, [int startFrom = 0]) {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom);
|
| }
|
|
|
| String toString() {
|
| @@ -2606,7 +2625,7 @@ class _Float32ArrayView extends _ByteArrayViewBase implements Float32List {
|
| }
|
|
|
| void setRange(int start, int length, List<double> from, [int startFrom = 0]) {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom);
|
| }
|
|
|
| String toString() {
|
| @@ -2670,7 +2689,7 @@ class _Float64ArrayView extends _ByteArrayViewBase implements Float64List {
|
| }
|
|
|
| void setRange(int start, int length, List<double> from, [int startFrom = 0]) {
|
| - Arrays.copy(from, startFrom, this, start, length);
|
| + IterableMixinWorkaround.setRangeList(this, start, length, from, startFrom);
|
| }
|
|
|
| String toString() {
|
|
|