OLD | NEW |
| (Empty) |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | |
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. | |
4 | |
5 class Uint32ArrayWrappingImplementation extends ArrayBufferViewWrappingImplement
ation implements Uint32Array { | |
6 Uint32ArrayWrappingImplementation._wrap(ptr) : super._wrap(ptr) {} | |
7 | |
8 factory Uint32ArrayWrappingImplementation(int length) => | |
9 LevelDom.wrapUint32Array(new dom.Uint32Array(length)); | |
10 | |
11 factory Uint32ArrayWrappingImplementation.from(List<num> list) => | |
12 // TODO(nweiz): when there's a cross-platform name for the native | |
13 // implementation of List, check if [list] is native and if not convert it | |
14 // to a native list before sending it to the JS constructor. | |
15 LevelDom.wrapUint32Array(new dom.Uint32Array.fromList(list)); | |
16 | |
17 factory Uint32ArrayWrappingImplementation.fromBuffer(ArrayBuffer buffer) => | |
18 LevelDom.wrapUint32Array(new dom.Uint32Array.fromBuffer(LevelDom.unwrap(buff
er))); | |
19 | |
20 int get length() { return _ptr.length; } | |
21 | |
22 Uint32Array subarray(int start, [int end]) { | |
23 if (end === null) { | |
24 return LevelDom.wrapUint32Array(_ptr.subarray(start)); | |
25 } else { | |
26 return LevelDom.wrapUint32Array(_ptr.subarray(start, end)); | |
27 } | |
28 } | |
29 } | |
OLD | NEW |