| Index: runtime/lib/byte_array.dart
|
| diff --git a/runtime/lib/byte_array.dart b/runtime/lib/byte_array.dart
|
| index aa8e5dcaf437903e2d7b55a560b6a4a024dc3e89..8718fdee9c7df8f1066abef7e5a9cb45c8ae31e4 100644
|
| --- a/runtime/lib/byte_array.dart
|
| +++ b/runtime/lib/byte_array.dart
|
| @@ -7,6 +7,10 @@ patch class Int8List {
|
| return new _Int8Array(length);
|
| }
|
|
|
| + /* patch */ factory Int8List.transferrable(int length) {
|
| + return new _Int8Array.transferrable(length);
|
| + }
|
| +
|
| /* patch */ factory Int8List.view(ByteArray array,
|
| [int start = 0, int length]) {
|
| return new _Int8ArrayView(array, start, length);
|
| @@ -19,6 +23,10 @@ patch class Uint8List {
|
| return new _Uint8Array(length);
|
| }
|
|
|
| + /* patch */ factory Uint8List.transferrable(int length) {
|
| + return new _Uint8Array.transferrable(length);
|
| + }
|
| +
|
| /* patch */ factory Uint8List.view(ByteArray array,
|
| [int start = 0, int length]) {
|
| return new _Uint8ArrayView(array, start, length);
|
| @@ -31,6 +39,10 @@ patch class Int16List {
|
| return new _Int16Array(length);
|
| }
|
|
|
| + /* patch */ factory Int16List.transferrable(int length) {
|
| + return new _Int16Array.transferrable(length);
|
| + }
|
| +
|
| /* patch */ factory Int16List.view(ByteArray array, [int start = 0, int length]) {
|
| return new _Int16ArrayView(array, start, length);
|
| }
|
| @@ -42,6 +54,10 @@ patch class Uint16List {
|
| return new _Uint16Array(length);
|
| }
|
|
|
| + /* patch */ factory Uint16List.transferrable(int length) {
|
| + return new _Uint16Array.transferrable(length);
|
| + }
|
| +
|
| /* patch */ factory Uint16List.view(ByteArray array, [int start = 0, int length]) {
|
| return new _Uint16ArrayView(array, start, length);
|
| }
|
| @@ -53,6 +69,10 @@ patch class Int32List {
|
| return new _Int32Array(length);
|
| }
|
|
|
| + /* patch */ factory Int32List.transferrable(int length) {
|
| + return new _Int32Array.transferrable(length);
|
| + }
|
| +
|
| /* patch */ factory Int32List.view(ByteArray array, [int start = 0, int length]) {
|
| return new _Int32ArrayView(array, start, length);
|
| }
|
| @@ -64,6 +84,10 @@ patch class Uint32List {
|
| return new _Uint32Array(length);
|
| }
|
|
|
| + /* patch */ factory Uint32List.transferrable(int length) {
|
| + return new _Uint32Array.transferrable(length);
|
| + }
|
| +
|
| /* patch */ factory Uint32List.view(ByteArray array, [int start = 0, int length]) {
|
| return new _Uint32ArrayView(array, start, length);
|
| }
|
| @@ -75,6 +99,10 @@ patch class Int64List {
|
| return new _Int64Array(length);
|
| }
|
|
|
| + /* patch */ factory Int64List.transferrable(int length) {
|
| + return new _Int64Array.transferrable(length);
|
| + }
|
| +
|
| /* patch */ factory Int64List.view(ByteArray array, [int start = 0, int length]) {
|
| return new _Int64ArrayView(array, start, length);
|
| }
|
| @@ -86,6 +114,10 @@ patch class Uint64List {
|
| return new _Uint64Array(length);
|
| }
|
|
|
| + /* patch */ factory Uint64List.transferrable(int length) {
|
| + return new _Uint64Array.transferrable(length);
|
| + }
|
| +
|
| /* patch */ factory Uint64List.view(ByteArray array, [int start = 0, int length]) {
|
| return new _Uint64ArrayView(array, start, length);
|
| }
|
| @@ -97,6 +129,10 @@ patch class Float32List {
|
| return new _Float32Array(length);
|
| }
|
|
|
| + /* patch */ factory Float32List.transferrable(int length) {
|
| + return new _Float32Array.transferrable(length);
|
| + }
|
| +
|
| /* patch */ factory Float32List.view(ByteArray array, [int start = 0, int length]) {
|
| return new _Float32ArrayView(array, start, length);
|
| }
|
| @@ -108,6 +144,10 @@ patch class Float64List {
|
| return new _Float64Array(length);
|
| }
|
|
|
| + /* patch */ factory Float64List.transferrable(int length) {
|
| + return new _Float64Array.transferrable(length);
|
| + }
|
| +
|
| /* patch */ factory Float64List.view(ByteArray array, [int start = 0, int length]) {
|
| return new _Float64ArrayView(array, start, length);
|
| }
|
| @@ -347,6 +387,10 @@ class _Int8Array extends _ByteArrayBase implements Int8List {
|
| return _new(length);
|
| }
|
|
|
| + factory _Int8Array.transferrable(int length) {
|
| + return _newTransferrable(length);
|
| + }
|
| +
|
| factory _Int8Array.view(ByteArray array, [int start = 0, int length]) {
|
| if (length == null) {
|
| length = array.lengthInBytes();
|
| @@ -399,6 +443,8 @@ class _Int8Array extends _ByteArrayBase implements Int8List {
|
| static const int _BYTES_PER_ELEMENT = 1;
|
|
|
| static _Int8Array _new(int length) native "Int8Array_new";
|
| + static _Int8Array _newTransferrable(int length) native
|
| + "Int8Array_newTransferrable";
|
|
|
| int _getIndexed(int index) native "Int8Array_getIndexed";
|
| int _setIndexed(int index, int value) native "Int8Array_setIndexed";
|
| @@ -410,6 +456,10 @@ class _Uint8Array extends _ByteArrayBase implements Uint8List {
|
| return _new(length);
|
| }
|
|
|
| + factory _Uint8Array.transferrable(int length) {
|
| + return _newTransferrable(length);
|
| + }
|
| +
|
| factory _Uint8Array.view(ByteArray array, [int start = 0, int length]) {
|
| if (length == null) {
|
| length = array.lengthInBytes();
|
| @@ -462,7 +512,8 @@ class _Uint8Array extends _ByteArrayBase implements Uint8List {
|
| static const int _BYTES_PER_ELEMENT = 1;
|
|
|
| static _Uint8Array _new(int length) native "Uint8Array_new";
|
| -
|
| + static _Uint8Array _newTransferrable(int length) native
|
| + "Uint8Array_newTransferrable";
|
| int _getIndexed(int index) native "Uint8Array_getIndexed";
|
| int _setIndexed(int index, int value) native "Uint8Array_setIndexed";
|
| }
|
| @@ -473,6 +524,10 @@ class _Int16Array extends _ByteArrayBase implements Int16List {
|
| return _new(length);
|
| }
|
|
|
| + factory _Int16Array.transferrable(int length) {
|
| + return _newTransferrable(length);
|
| + }
|
| +
|
| factory _Int16Array.view(ByteArray array, [int start = 0, int length]) {
|
| if (length == null) {
|
| length = (array.lengthInBytes() - start) ~/ _BYTES_PER_ELEMENT;
|
| @@ -525,6 +580,8 @@ class _Int16Array extends _ByteArrayBase implements Int16List {
|
| static const int _BYTES_PER_ELEMENT = 2;
|
|
|
| static _Int16Array _new(int length) native "Int16Array_new";
|
| + static _Int16Array _newTransferrable(int length) native
|
| + "Int16Array_newTransferrable";
|
|
|
| int _getIndexed(int index) native "Int16Array_getIndexed";
|
| int _setIndexed(int index, int value) native "Int16Array_setIndexed";
|
| @@ -536,6 +593,10 @@ class _Uint16Array extends _ByteArrayBase implements Uint16List {
|
| return _new(length);
|
| }
|
|
|
| + factory _Uint16Array.transferrable(int length) {
|
| + return _newTransferrable(length);
|
| + }
|
| +
|
| factory _Uint16Array.view(ByteArray array, [int start = 0, int length]) {
|
| if (length == null) {
|
| length = (array.lengthInBytes() - start) ~/ _BYTES_PER_ELEMENT;
|
| @@ -588,6 +649,8 @@ class _Uint16Array extends _ByteArrayBase implements Uint16List {
|
| static const int _BYTES_PER_ELEMENT = 2;
|
|
|
| static _Uint16Array _new(int length) native "Uint16Array_new";
|
| + static _Uint16Array _newTransferrable(int length) native
|
| + "Uint16Array_newTransferrable";
|
|
|
| int _getIndexed(int index) native "Uint16Array_getIndexed";
|
| int _setIndexed(int index, int value) native "Uint16Array_setIndexed";
|
| @@ -599,6 +662,10 @@ class _Int32Array extends _ByteArrayBase implements Int32List {
|
| return _new(length);
|
| }
|
|
|
| + factory _Int32Array.transferrable(int length) {
|
| + return _newTransferrable(length);
|
| + }
|
| +
|
| factory _Int32Array.view(ByteArray array, [int start = 0, int length]) {
|
| if (length == null) {
|
| length = (array.lengthInBytes() - start) ~/ _BYTES_PER_ELEMENT;
|
| @@ -651,6 +718,8 @@ class _Int32Array extends _ByteArrayBase implements Int32List {
|
| static const int _BYTES_PER_ELEMENT = 4;
|
|
|
| static _Int32Array _new(int length) native "Int32Array_new";
|
| + static _Int32Array _newTransferrable(int length) native
|
| + "Int32Array_newTransferrable";
|
|
|
| int _getIndexed(int index) native "Int32Array_getIndexed";
|
| int _setIndexed(int index, int value) native "Int32Array_setIndexed";
|
| @@ -662,6 +731,10 @@ class _Uint32Array extends _ByteArrayBase implements Uint32List {
|
| return _new(length);
|
| }
|
|
|
| + factory _Uint32Array.transferrable(int length) {
|
| + return _newTransferrable(length);
|
| + }
|
| +
|
| factory _Uint32Array.view(ByteArray array, [int start = 0, int length]) {
|
| if (length == null) {
|
| length = (array.lengthInBytes() - start) ~/ _BYTES_PER_ELEMENT;
|
| @@ -714,6 +787,8 @@ class _Uint32Array extends _ByteArrayBase implements Uint32List {
|
| static const int _BYTES_PER_ELEMENT = 4;
|
|
|
| static _Uint32Array _new(int length) native "Uint32Array_new";
|
| + static _Uint32Array _newTransferrable(int length) native
|
| + "Uint32Array_newTransferrable";
|
|
|
| int _getIndexed(int index) native "Uint32Array_getIndexed";
|
| int _setIndexed(int index, int value) native "Uint32Array_setIndexed";
|
| @@ -725,6 +800,10 @@ class _Int64Array extends _ByteArrayBase implements Int64List {
|
| return _new(length);
|
| }
|
|
|
| + factory _Int64Array.transferrable(int length) {
|
| + return _newTransferrable(length);
|
| + }
|
| +
|
| factory _Int64Array.view(ByteArray array, [int start = 0, int length]) {
|
| if (length == null) {
|
| length = (array.lengthInBytes() - start) ~/ _BYTES_PER_ELEMENT;
|
| @@ -777,6 +856,8 @@ class _Int64Array extends _ByteArrayBase implements Int64List {
|
| static const int _BYTES_PER_ELEMENT = 8;
|
|
|
| static _Int64Array _new(int length) native "Int64Array_new";
|
| + static _Int64Array _newTransferrable(int length) native
|
| + "Int64Array_newTransferrable";
|
|
|
| int _getIndexed(int index) native "Int64Array_getIndexed";
|
| int _setIndexed(int index, int value) native "Int64Array_setIndexed";
|
| @@ -788,6 +869,10 @@ class _Uint64Array extends _ByteArrayBase implements Uint64List {
|
| return _new(length);
|
| }
|
|
|
| + factory _Uint64Array.transferrable(int length) {
|
| + return _newTransferrable(length);
|
| + }
|
| +
|
| factory _Uint64Array.view(ByteArray array, [int start = 0, int length]) {
|
| if (length == null) {
|
| length = (array.lengthInBytes() - start) ~/ _BYTES_PER_ELEMENT;
|
| @@ -840,6 +925,8 @@ class _Uint64Array extends _ByteArrayBase implements Uint64List {
|
| static const int _BYTES_PER_ELEMENT = 8;
|
|
|
| static _Uint64Array _new(int length) native "Uint64Array_new";
|
| + static _Uint64Array _newTransferrable(int length) native
|
| + "Uint64Array_newTransferrable";
|
|
|
| int _getIndexed(int index) native "Uint64Array_getIndexed";
|
| int _setIndexed(int index, int value) native "Uint64Array_setIndexed";
|
| @@ -851,6 +938,10 @@ class _Float32Array extends _ByteArrayBase implements Float32List {
|
| return _new(length);
|
| }
|
|
|
| + factory _Float32Array.transferrable(int length) {
|
| + return _newTransferrable(length);
|
| + }
|
| +
|
| factory _Float32Array.view(ByteArray array, [int start = 0, int length]) {
|
| if (length == null) {
|
| length = (array.lengthInBytes() - start) ~/ _BYTES_PER_ELEMENT;
|
| @@ -903,6 +994,8 @@ class _Float32Array extends _ByteArrayBase implements Float32List {
|
| static const int _BYTES_PER_ELEMENT = 4;
|
|
|
| static _Float32Array _new(int length) native "Float32Array_new";
|
| + static _Float32Array _newTransferrable(int length) native
|
| + "Float32Array_newTransferrable";
|
|
|
| double _getIndexed(int index) native "Float32Array_getIndexed";
|
| int _setIndexed(int index, double value) native "Float32Array_setIndexed";
|
| @@ -914,6 +1007,10 @@ class _Float64Array extends _ByteArrayBase implements Float64List {
|
| return _new(length);
|
| }
|
|
|
| + factory _Float64Array.transferrable(int length) {
|
| + return _newTransferrable(length);
|
| + }
|
| +
|
| factory _Float64Array.view(ByteArray array, [int start = 0, int length]) {
|
| if (length == null) {
|
| length = (array.lengthInBytes() - start) ~/ _BYTES_PER_ELEMENT;
|
| @@ -966,6 +1063,8 @@ class _Float64Array extends _ByteArrayBase implements Float64List {
|
| static const int _BYTES_PER_ELEMENT = 8;
|
|
|
| static _Float64Array _new(int length) native "Float64Array_new";
|
| + static _Float64Array _newTransferrable(int length) native
|
| + "Float64Array_newTransferrable";
|
|
|
| double _getIndexed(int index) native "Float64Array_getIndexed";
|
| int _setIndexed(int index, double value) native "Float64Array_setIndexed";
|
|
|