Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(733)

Unified Diff: runtime/lib/typeddata.dart

Issue 12608006: Use offsetInBytes and not index in the get/set accessors of views. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 7 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: runtime/lib/typeddata.dart
===================================================================
--- runtime/lib/typeddata.dart (revision 19984)
+++ runtime/lib/typeddata.dart (working copy)
@@ -475,35 +475,85 @@
// Internal utility methods.
- int _getInt8(int index) native "TypedData_GetInt8";
- void _setInt8(int index, int value) native "TypedData_SetInt8";
+ int _getInt8(int offsetInBytes) native "TypedData_GetInt8";
+ void _setInt8(int offsetInBytes, int value) native "TypedData_SetInt8";
- int _getUint8(int index) native "TypedData_GetUint8";
- void _setUint8(int index, int value) native "TypedData_SetUint8";
+ int _getUint8(int offsetInBytes) native "TypedData_GetUint8";
+ void _setUint8(int offsetInBytes, int value) native "TypedData_SetUint8";
- int _getInt16(int index) native "TypedData_GetInt16";
- void _setInt16(int index, int value) native "TypedData_SetInt16";
+ int _getIndexedInt16(int index) {
Florian Schneider 2013/03/14 10:12:00 It does not make a huge difference, but it may not
siva 2013/03/14 11:16:34 True, I will move them to the respective classes.
+ return _getInt16(index * Int16List.BYTES_PER_ELEMENT);
+ }
+ int _getInt16(int offsetInBytes) native "TypedData_GetInt16";
+ void _setIndexedInt16(int index, int value) {
+ _setInt16(index * Int16List.BYTES_PER_ELEMENT, value);
+ }
+ void _setInt16(int offsetInBytes, int value) native "TypedData_SetInt16";
- int _getUint16(int index) native "TypedData_GetUint16";
- void _setUint16(int index, int value) native "TypedData_SetUint16";
+ int _getIndexedUint16(int index) {
+ return _getUint16(index * Uint16List.BYTES_PER_ELEMENT);
+ }
+ int _getUint16(int offsetInBytes) native "TypedData_GetUint16";
+ void _setIndexedUint16(int index, int value) {
+ _setUint16(index * Uint16List.BYTES_PER_ELEMENT, value);
+ }
+ void _setUint16(int offsetInBytes, int value) native "TypedData_SetUint16";
- int _getInt32(int index) native "TypedData_GetInt32";
- void _setInt32(int index, int value) native "TypedData_SetInt32";
+ int _getIndexedInt32(int index) {
+ return _getInt32(index * Int32List.BYTES_PER_ELEMENT);
+ }
+ int _getInt32(int offsetInBytes) native "TypedData_GetInt32";
+ void _setIndexedInt32(int index, int value) {
+ _setInt32(index * Int32List.BYTES_PER_ELEMENT, value);
+ }
+ void _setInt32(int offsetInBytes, int value) native "TypedData_SetInt32";
- int _getUint32(int index) native "TypedData_GetUint32";
- void _setUint32(int index, int value) native "TypedData_SetUint32";
+ int _getIndexedUint32(int index) {
+ return _getUint32(index * Uint32List.BYTES_PER_ELEMENT);
+ }
+ int _getUint32(int offsetInBytes) native "TypedData_GetUint32";
+ void _setIndexedUint32(int index, int value) {
+ _setInt32(index * Uint32List.BYTES_PER_ELEMENT, value);
+ }
+ void _setUint32(int offsetInBytes, int value) native "TypedData_SetUint32";
- int _getInt64(int index) native "TypedData_GetInt64";
- void _setInt64(int index, int value) native "TypedData_SetInt64";
+ int _getIndexedInt64(int index) {
+ return _getInt64(index * Int64List.BYTES_PER_ELEMENT);
+ }
+ int _getInt64(int offsetInBytes) native "TypedData_GetInt64";
+ void _setIndexedInt64(int index, int value) {
+ _setInt64(index * Int64List.BYTES_PER_ELEMENT, value);
+ }
+ void _setInt64(int offsetInBytes, int value) native "TypedData_SetInt64";
- int _getUint64(int index) native "TypedData_GetUint64";
- void _setUint64(int index, int value) native "TypedData_SetUint64";
+ int _getIndexedUint64(int index) {
+ return _getUint64(index * Uint64List.BYTES_PER_ELEMENT);
+ }
+ int _getUint64(int offsetInBytes) native "TypedData_GetUint64";
+ void _setIndexedUint64(int index, int value) {
+ _setUint64(index * Uint64List.BYTES_PER_ELEMENT, value);
+ }
+ void _setUint64(int offsetInBytes, int value) native "TypedData_SetUint64";
- double _getFloat32(int index) native "TypedData_GetFloat32";
- void _setFloat32(int index, double value) native "TypedData_SetFloat32";
+ double _getIndexedFloat32(int index) {
+ return _getFloat32(index * Float32List.BYTES_PER_ELEMENT);
+ }
+ double _getFloat32(int offsetInBytes) native "TypedData_GetFloat32";
+ void _setIndexedFloat32(int index, double value) {
+ _setFloat32(index * Float32List.BYTES_PER_ELEMENT, value);
+ }
+ void _setFloat32(int offsetInBytes, double value)
+ native "TypedData_SetFloat32";
- double _getFloat64(int index) native "TypedData_GetFloat64";
- void _setFloat64(int index, double value) native "TypedData_SetFloat64";
+ double _getIndexedFloat64(int index) {
+ return _getFloat64(index * Float64List.BYTES_PER_ELEMENT);
+ }
+ double _getFloat64(int offsetInBytes) native "TypedData_GetFloat64";
+ void _setIndexedFloat64(int index, double value) {
+ _setFloat64(index * Float64List.BYTES_PER_ELEMENT, value);
+ }
+ void _setFloat64(int offsetInBytes, double value)
+ native "TypedData_SetFloat64";
}
@@ -713,7 +763,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- return _getInt16(index);
+ return _getIndexedInt16(index);
}
void operator[]=(int index, int value) {
@@ -721,7 +771,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- _setInt16(index, _toInt16(value));
+ _setIndexedInt16(index, _toInt16(value));
}
Iterator<int> get iterator {
@@ -774,7 +824,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- return _getUint16(index);
+ return _getIndexedUint16(index);
}
void operator[]=(int index, int value) {
@@ -782,7 +832,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- _setUint16(index, _toUint16(value));
+ _setIndexedUint16(index, _toUint16(value));
}
Iterator<int> get iterator {
@@ -835,7 +885,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- return _getInt32(index);
+ return _getIndexedInt32(index);
}
void operator[]=(int index, int value) {
@@ -843,7 +893,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- _setInt32(index, _toInt32(value));
+ _setIndexedInt32(index, _toInt32(value));
}
Iterator<int> get iterator {
@@ -896,7 +946,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- return _getUint32(index);
+ return _getIndexedUint32(index);
}
void operator[]=(int index, int value) {
@@ -904,7 +954,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- _setUint32(index, _toUint32(value));
+ _setIndexedUint32(index, _toUint32(value));
}
Iterator<int> get iterator {
@@ -957,7 +1007,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- return _getInt64(index);
+ return _getIndexedInt64(index);
}
void operator[]=(int index, int value) {
@@ -965,7 +1015,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- _setInt64(index, _toInt64(value));
+ _setIndexedInt64(index, _toInt64(value));
}
Iterator<int> get iterator {
@@ -1018,7 +1068,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- return _getUint64(index);
+ return _getIndexedUint64(index);
}
void operator[]=(int index, int value) {
@@ -1026,7 +1076,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- _setUint64(index, _toUint64(value));
+ _setIndexedUint64(index, _toUint64(value));
}
Iterator<int> get iterator {
@@ -1079,7 +1129,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- return _getFloat32(index);
+ return _getIndexedFloat32(index);
}
void operator[]=(int index, double value) {
@@ -1087,7 +1137,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- _setFloat32(index, value);
+ _setIndexedFloat32(index, value);
}
Iterator<double> get iterator {
@@ -1140,7 +1190,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- return _getFloat64(index);
+ return _getIndexedFloat64(index);
}
void operator[]=(int index, double value) {
@@ -1148,7 +1198,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- _setFloat64(index, value);
+ _setIndexedFloat64(index, value);
}
Iterator<double> get iterator {
@@ -1350,7 +1400,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- return _getInt16(index);
+ return _getIndexedInt16(index);
}
void operator[]=(int index, int value) {
@@ -1358,7 +1408,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- _setInt16(index, _toInt16(value));
+ _setIndexedInt16(index, _toInt16(value));
}
Iterator<int> get iterator {
@@ -1403,7 +1453,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- return _getUint16(index);
+ return _getIndexedUint16(index);
}
void operator[]=(int index, int value) {
@@ -1411,7 +1461,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- _setUint16(index, _toUint16(value));
+ _setIndexedUint16(index, _toUint16(value));
}
Iterator<int> get iterator {
@@ -1456,7 +1506,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- return _getInt32(index);
+ return _getIndexedInt32(index);
}
void operator[]=(int index, int value) {
@@ -1464,7 +1514,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- _setInt32(index, _toInt32(value));
+ _setIndexedInt32(index, _toInt32(value));
}
Iterator<int> get iterator {
@@ -1509,7 +1559,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- return _getUint32(index);
+ return _getIndexedUint32(index);
}
void operator[]=(int index, int value) {
@@ -1517,7 +1567,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- _setUint32(index, _toUint32(value));
+ _setIndexedUint32(index, _toUint32(value));
}
Iterator<int> get iterator {
@@ -1562,7 +1612,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- return _getInt64(index);
+ return _getIndexedInt64(index);
}
void operator[]=(int index, int value) {
@@ -1570,7 +1620,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- _setInt64(index, _toInt64(value));
+ _setIndexedInt64(index, _toInt64(value));
}
Iterator<int> get iterator {
@@ -1615,7 +1665,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- return _getUint64(index);
+ return _getIndexedUint64(index);
}
void operator[]=(int index, int value) {
@@ -1623,7 +1673,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- _setUint64(index, _toUint64(value));
+ _setIndexedUint64(index, _toUint64(value));
}
Iterator<int> get iterator {
@@ -1668,7 +1718,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- return _getFloat32(index);
+ return _getIndexedFloat32(index);
}
void operator[]=(int index, double value) {
@@ -1676,7 +1726,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- _setFloat32(index, value);
+ _setIndexedFloat32(index, value);
}
Iterator<double> get iterator {
@@ -1721,7 +1771,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- return _getFloat64(index);
+ return _getIndexedFloat64(index);
}
void operator[]=(int index, double value) {
@@ -1729,7 +1779,7 @@
String message = "$index must be in the range [0..$length)";
throw new RangeError(message);
}
- _setFloat64(index, value);
+ _setIndexedFloat64(index, value);
}
Iterator<double> get iterator {

Powered by Google App Engine
This is Rietveld 408576698