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

Unified Diff: lib/dom/frog/dom_frog.dart

Issue 9969001: Typed array constructors with optional buffer offset and length. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: include htmldartium Created 8 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
« no previous file with comments | « lib/dom/dom.dart ('k') | lib/dom/scripts/systemhtml.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: lib/dom/frog/dom_frog.dart
diff --git a/lib/dom/frog/dom_frog.dart b/lib/dom/frog/dom_frog.dart
index 90c36ddb45321e931d5b22401249ccc33bc1f28e..ffb9a34490191ff4cebee8ea14259a96504a3edd 100644
--- a/lib/dom/frog/dom_frog.dart
+++ b/lib/dom/frog/dom_frog.dart
@@ -14891,7 +14891,7 @@ interface Float32Array extends ArrayBufferView, List<num> default _TypedArrayFac
Float32Array.fromList(List<num> list);
- Float32Array.fromBuffer(ArrayBuffer buffer);
+ Float32Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]);
static final int BYTES_PER_ELEMENT = 4;
@@ -14913,7 +14913,7 @@ interface Float64Array extends ArrayBufferView, List<num> default _TypedArrayFac
Float64Array.fromList(List<num> list);
- Float64Array.fromBuffer(ArrayBuffer buffer);
+ Float64Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]);
static final int BYTES_PER_ELEMENT = 8;
@@ -17200,7 +17200,7 @@ interface Int16Array extends ArrayBufferView, List<int> default _TypedArrayFacto
Int16Array.fromList(List<int> list);
- Int16Array.fromBuffer(ArrayBuffer buffer);
+ Int16Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]);
static final int BYTES_PER_ELEMENT = 2;
@@ -17222,7 +17222,7 @@ interface Int32Array extends ArrayBufferView, List<int> default _TypedArrayFacto
Int32Array.fromList(List<int> list);
- Int32Array.fromBuffer(ArrayBuffer buffer);
+ Int32Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]);
static final int BYTES_PER_ELEMENT = 4;
@@ -17244,7 +17244,7 @@ interface Int8Array extends ArrayBufferView, List<int> default _TypedArrayFactor
Int8Array.fromList(List<int> list);
- Int8Array.fromBuffer(ArrayBuffer buffer);
+ Int8Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]);
static final int BYTES_PER_ELEMENT = 1;
@@ -22057,7 +22057,7 @@ interface Uint16Array extends ArrayBufferView, List<int> default _TypedArrayFact
Uint16Array.fromList(List<int> list);
- Uint16Array.fromBuffer(ArrayBuffer buffer);
+ Uint16Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]);
static final int BYTES_PER_ELEMENT = 2;
@@ -22079,7 +22079,7 @@ interface Uint32Array extends ArrayBufferView, List<int> default _TypedArrayFact
Uint32Array.fromList(List<int> list);
- Uint32Array.fromBuffer(ArrayBuffer buffer);
+ Uint32Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]);
static final int BYTES_PER_ELEMENT = 4;
@@ -22101,7 +22101,7 @@ interface Uint8Array extends ArrayBufferView, List<int> default _TypedArrayFacto
Uint8Array.fromList(List<int> list);
- Uint8Array.fromBuffer(ArrayBuffer buffer);
+ Uint8Array.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]);
static final int BYTES_PER_ELEMENT = 1;
@@ -22123,7 +22123,7 @@ interface Uint8ClampedArray extends Uint8Array default _TypedArrayFactoryProvide
Uint8ClampedArray.fromList(List<int> list);
- Uint8ClampedArray.fromBuffer(ArrayBuffer buffer);
+ Uint8ClampedArray.fromBuffer(ArrayBuffer buffer, [int byteOffset, int length]);
final int length;
@@ -24646,43 +24646,92 @@ class _AudioContextFactoryProvider {
''';
}
+class _WebKitPointFactoryProvider {
+
+ factory WebKitPoint(num x, num y) native '''return new WebKitPoint(x, y);''';
+}
+
+class _WebSocketFactoryProvider {
+
+ factory WebSocket(String url) native '''return new WebSocket(url);''';
+}
+// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
class _TypedArrayFactoryProvider {
factory Float32Array(int length) => _F32(length);
factory Float32Array.fromList(List<num> list) => _F32(ensureNative(list));
- factory Float32Array.fromBuffer(ArrayBuffer buffer) => _F32(buffer);
+ factory Float32Array.fromBuffer(ArrayBuffer buffer,
+ [int byteOffset = 0, int length]) {
+ if (length == null) return _F32_2(buffer, byteOffset);
+ return _F32_3(buffer, byteOffset, length);
+ }
factory Float64Array(int length) => _F64(length);
factory Float64Array.fromList(List<num> list) => _F64(ensureNative(list));
- factory Float64Array.fromBuffer(ArrayBuffer buffer) => _F64(buffer);
+ factory Float64Array.fromBuffer(ArrayBuffer buffer,
+ [int byteOffset = 0, int length]) {
+ if (length == null) return _F64_2(buffer, byteOffset);
+ return _F64_3(buffer, byteOffset, length);
+ }
factory Int8Array(int length) => _I8(length);
factory Int8Array.fromList(List<num> list) => _I8(ensureNative(list));
- factory Int8Array.fromBuffer(ArrayBuffer buffer) => _I8(buffer);
+ factory Int8Array.fromBuffer(ArrayBuffer buffer,
+ [int byteOffset = 0, int length]) {
+ if (length == null) return _I8_2(buffer, byteOffset);
+ return _I8_3(buffer, byteOffset, length);
+ }
factory Int16Array(int length) => _I16(length);
factory Int16Array.fromList(List<num> list) => _I16(ensureNative(list));
- factory Int16Array.fromBuffer(ArrayBuffer buffer) => _I16(buffer);
+ factory Int16Array.fromBuffer(ArrayBuffer buffer,
+ [int byteOffset = 0, int length]) {
+ if (length == null) return _I16_2(buffer, byteOffset);
+ return _I16_3(buffer, byteOffset, length);
+ }
factory Int32Array(int length) => _I32(length);
factory Int32Array.fromList(List<num> list) => _I32(ensureNative(list));
- factory Int32Array.fromBuffer(ArrayBuffer buffer) => _I32(buffer);
+ factory Int32Array.fromBuffer(ArrayBuffer buffer,
+ [int byteOffset = 0, int length]) {
+ if (length == null) return _I32_2(buffer, byteOffset);
+ return _I32_3(buffer, byteOffset, length);
+ }
factory Uint8Array(int length) => _U8(length);
factory Uint8Array.fromList(List<num> list) => _U8(ensureNative(list));
- factory Uint8Array.fromBuffer(ArrayBuffer buffer) => _U8(buffer);
+ factory Uint8Array.fromBuffer(ArrayBuffer buffer,
+ [int byteOffset = 0, int length]) {
+ if (length == null) return _U8_2(buffer, byteOffset);
+ return _U8_3(buffer, byteOffset, length);
+ }
factory Uint16Array(int length) => _U16(length);
factory Uint16Array.fromList(List<num> list) => _U16(ensureNative(list));
- factory Uint16Array.fromBuffer(ArrayBuffer buffer) => _U16(buffer);
+ factory Uint16Array.fromBuffer(ArrayBuffer buffer,
+ [int byteOffset = 0, int length]) {
+ if (length == null) return _U16_2(buffer, byteOffset);
+ return _U16_3(buffer, byteOffset, length);
+ }
factory Uint32Array(int length) => _U32(length);
factory Uint32Array.fromList(List<num> list) => _U32(ensureNative(list));
- factory Uint32Array.fromBuffer(ArrayBuffer buffer) => _U32(buffer);
+ factory Uint32Array.fromBuffer(ArrayBuffer buffer,
+ [int byteOffset = 0, int length]) {
+ if (length == null) return _U32_2(buffer, byteOffset);
+ return _U32_3(buffer, byteOffset, length);
+ }
factory Uint8ClampedArray(int length) => _U8C(length);
factory Uint8ClampedArray.fromList(List<num> list) => _U8C(ensureNative(list));
- factory Uint8ClampedArray.fromBuffer(ArrayBuffer buffer) => _U8C(buffer);
+ factory Uint8ClampedArray.fromBuffer(ArrayBuffer buffer,
+ [int byteOffset = 0, int length]) {
+ if (length == null) return _U8C_2(buffer, byteOffset);
+ return _U8C_3(buffer, byteOffset, length);
+ }
static Float32Array _F32(arg) native 'return new Float32Array(arg);';
static Float64Array _F64(arg) native 'return new Float64Array(arg);';
@@ -24694,18 +24743,31 @@ class _TypedArrayFactoryProvider {
static Uint32Array _U32(arg) native 'return new Uint32Array(arg);';
static Uint8ClampedArray _U8C(arg) native 'return new Uint8ClampedArray(arg);';
+ static Float32Array _F32_2(arg1, arg2) native 'return new Float32Array(arg1, arg2);';
+ static Float64Array _F64_2(arg1, arg2) native 'return new Float64Array(arg1, arg2);';
+ static Int8Array _I8_2(arg1, arg2) native 'return new Int8Array(arg1, arg2);';
+ static Int16Array _I16_2(arg1, arg2) native 'return new Int16Array(arg1, arg2);';
+ static Int32Array _I32_2(arg1, arg2) native 'return new Int32Array(arg1, arg2);';
+ static Uint8Array _U8_2(arg1, arg2) native 'return new Uint8Array(arg1, arg2);';
+ static Uint16Array _U16_2(arg1, arg2) native 'return new Uint16Array(arg1, arg2);';
+ static Uint32Array _U32_2(arg1, arg2) native 'return new Uint32Array(arg1, arg2);';
+ static Uint8ClampedArray _U8C_2(arg1, arg2) native 'return new Uint8ClampedArray(arg1, arg2);';
+
+ static Float32Array _F32_3(arg1, arg2, arg3) native 'return new Float32Array(arg1, arg2, arg3);';
+ static Float64Array _F64_3(arg1, arg2, arg3) native 'return new Float64Array(arg1, arg2, arg3);';
+ static Int8Array _I8_3(arg1, arg2, arg3) native 'return new Int8Array(arg1, arg2, arg3);';
+ static Int16Array _I16_3(arg1, arg2, arg3) native 'return new Int16Array(arg1, arg2, arg3);';
+ static Int32Array _I32_3(arg1, arg2, arg3) native 'return new Int32Array(arg1, arg2, arg3);';
+ static Uint8Array _U8_3(arg1, arg2, arg3) native 'return new Uint8Array(arg1, arg2, arg3);';
+ static Uint16Array _U16_3(arg1, arg2, arg3) native 'return new Uint16Array(arg1, arg2, arg3);';
+ static Uint32Array _U32_3(arg1, arg2, arg3) native 'return new Uint32Array(arg1, arg2, arg3);';
+ static Uint8ClampedArray _U8C_3(arg1, arg2, arg3) native 'return new Uint8ClampedArray(arg1, arg2, arg3);';
+
+
+ // Ensures that [list] is a JavaScript Array or a typed array. If necessary,
+ // copies the list.
static ensureNative(List list) => list; // TODO: make sure.
}
-
-class _WebKitPointFactoryProvider {
-
- factory WebKitPoint(num x, num y) native '''return new WebKitPoint(x, y);''';
-}
-
-class _WebSocketFactoryProvider {
-
- factory WebSocket(String url) native '''return new WebSocket(url);''';
-}
// Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
« no previous file with comments | « lib/dom/dom.dart ('k') | lib/dom/scripts/systemhtml.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698