Dart Documentationchrome.src.common_expArrayBuffer

ArrayBuffer class

class ArrayBuffer extends ChromeObject {
 static ArrayBuffer create(JsObject jsProxy) => new ArrayBuffer.fromProxy(jsProxy);

 ArrayBuffer();
 ArrayBuffer.fromProxy(/*JsObject*/ jsProxy): super.fromProxy(jsProxy);

 factory ArrayBuffer.fromBytes(List<int> data) {
   var uint8Array = new JsObject(context['Uint8Array'], [new JsObject.jsify(data)]);

   return new ArrayBuffer.fromProxy(uint8Array['buffer']);
 }

 factory ArrayBuffer.fromString(String str) {
   var uint8Array = new JsObject(context['Uint8Array'], [new JsObject.jsify(str.codeUnits)]);

   return new ArrayBuffer.fromProxy(uint8Array['buffer']);
 }

 List<int> getBytes() {
   var int8View = new JsObject(context['Uint8Array'], [jsProxy]);

   List<int> result = new List<int>(int8View['length']);

   // TODO: this is _very_ slow
   // can we instead do: jsArray = Array.apply([], int8View);
   for (int i = 0; i < result.length; i++) {
     result[i] = int8View[i];
   }

   return result;
 }
}

Extends

ChromeObject > ArrayBuffer

Static Methods

ArrayBuffer create(JsObject jsProxy) #

static ArrayBuffer create(JsObject jsProxy) => new ArrayBuffer.fromProxy(jsProxy);

Constructors

new ArrayBuffer() #

Create a new instance of a ChromeObject, which creates and delegates to a JsObject proxy.

docs inherited from ChromeObject
ArrayBuffer();

factory ArrayBuffer.fromBytes(List<int> data) #

factory ArrayBuffer.fromBytes(List<int> data) {
 var uint8Array = new JsObject(context['Uint8Array'], [new JsObject.jsify(data)]);

 return new ArrayBuffer.fromProxy(uint8Array['buffer']);
}

new ArrayBuffer.fromProxy(jsProxy) #

Create a new instance of a ChromeObject, which delegates to the given JsObject proxy.

docs inherited from ChromeObject
ArrayBuffer.fromProxy(/*JsObject*/ jsProxy): super.fromProxy(jsProxy);

factory ArrayBuffer.fromString(String str) #

factory ArrayBuffer.fromString(String str) {
 var uint8Array = new JsObject(context['Uint8Array'], [new JsObject.jsify(str.codeUnits)]);

 return new ArrayBuffer.fromProxy(uint8Array['buffer']);
}

Properties

final jsProxy #

inherited from ChromeObject
final dynamic jsProxy

Methods

List<int> getBytes() #

List<int> getBytes() {
 var int8View = new JsObject(context['Uint8Array'], [jsProxy]);

 List<int> result = new List<int>(int8View['length']);

 // TODO: this is _very_ slow
 // can we instead do: jsArray = Array.apply([], int8View);
 for (int i = 0; i < result.length; i++) {
   result[i] = int8View[i];
 }

 return result;
}

JsObject toJs() #

inherited from ChromeObject
JsObject toJs() => jsProxy;

String toString() #

inherited from ChromeObject

Returns a string representation of this object.

docs inherited from Object
String toString() => jsProxy.toString();