1 module libwasm.bindings.StreamFilter; 2 3 import libwasm.types; 4 5 import memutils.ct: tuple; 6 import libwasm.bindings.EventHandler; 7 import libwasm.bindings.EventTarget; 8 9 @safe: 10 nothrow: 11 12 struct StreamFilter { 13 nothrow: 14 libwasm.bindings.EventTarget.EventTarget _parent; 15 alias _parent this; 16 this(Handle h) { 17 _parent = .EventTarget(h); 18 } 19 auto create()(uint requestId, string addonId) { 20 return StreamFilter(Serialize_Object_VarArgCall!Handle(this._parent, "create", "uint;string", tuple(requestId, addonId))); 21 } 22 void suspend()() { 23 Object_Call__void(this._parent, "suspend"); 24 } 25 void resume()() { 26 Object_Call__void(this._parent, "resume"); 27 } 28 void close()() { 29 Object_Call__void(this._parent, "close"); 30 } 31 void disconnect()() { 32 Object_Call__void(this._parent, "disconnect"); 33 } 34 void write()(scope ref SumType!(ArrayBuffer, Uint8Array) data) { 35 Serialize_Object_VarArgCall!void(this._parent, "write", "SumType!(Handle,Handle)", tuple(libwasm.sumtype.match!(((ref data.Types[0] v) => 0),((ref data.Types[1] v) => 1))(data),tuple(libwasm.sumtype.match!(((ref data.Types[0] v) => cast(Handle)v.handle),((ref data.Types[1] v) => Handle.init))(data),libwasm.sumtype.match!(((ref data.Types[0] v) => Handle.init),((ref data.Types[1] v) => cast(Handle)v.handle))(data)))); 36 } 37 StreamFilterStatus status()() { 38 return Object_Getter__int(this._parent, "status"); 39 } 40 string error()() { 41 return Object_Getter__string(this._parent, "error"); 42 } 43 void ondata(T0)(scope auto ref Optional!(T0) ondata) if (isTOrPointer!(T0, EventHandlerNonNull)) { 44 Object_Call_EventHandler__void(this._parent, "ondata", !ondata.empty, ondata.front); 45 } 46 EventHandler ondata()() { 47 return Object_Getter__EventHandler(this._parent, "ondata"); 48 } 49 void onstart(T0)(scope auto ref Optional!(T0) onstart) if (isTOrPointer!(T0, EventHandlerNonNull)) { 50 Object_Call_EventHandler__void(this._parent, "onstart", !onstart.empty, onstart.front); 51 } 52 EventHandler onstart()() { 53 return Object_Getter__EventHandler(this._parent, "onstart"); 54 } 55 void onstop(T0)(scope auto ref Optional!(T0) onstop) if (isTOrPointer!(T0, EventHandlerNonNull)) { 56 Object_Call_EventHandler__void(this._parent, "onstop", !onstop.empty, onstop.front); 57 } 58 EventHandler onstop()() { 59 return Object_Getter__EventHandler(this._parent, "onstop"); 60 } 61 void onerror(T0)(scope auto ref Optional!(T0) onerror) if (isTOrPointer!(T0, EventHandlerNonNull)) { 62 Object_Call_EventHandler__void(this._parent, "onerror", !onerror.empty, onerror.front); 63 } 64 EventHandler onerror()() { 65 return Object_Getter__EventHandler(this._parent, "onerror"); 66 } 67 } 68 enum StreamFilterStatus { 69 uninitialized, 70 transferringdata, 71 finishedtransferringdata, 72 suspended, 73 closed, 74 disconnected, 75 failed 76 } 77 78