1 module libwasm.bindings.EventSource;
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 EventSource {
13   nothrow:
14   libwasm.bindings.EventTarget.EventTarget _parent;
15   alias _parent this;
16   this(Handle h) {
17     _parent = .EventTarget(h);
18   }
19   string url()() {
20     return Object_Getter__string(this._parent, "url");
21   }
22   bool withCredentials()() {
23     return Object_Getter__bool(this._parent, "withCredentials");
24   }
25   enum ushort CONNECTING = 0;
26   enum ushort OPEN = 1;
27   enum ushort CLOSED = 2;
28   ushort readyState()() {
29     return Object_Getter__ushort(this._parent, "readyState");
30   }
31   void onopen(T0)(scope auto ref Optional!(T0) onopen) if (isTOrPointer!(T0, EventHandlerNonNull)) {
32     Object_Call_EventHandler__void(this._parent, "onopen", !onopen.empty, onopen.front);
33   }
34   EventHandler onopen()() {
35     return Object_Getter__EventHandler(this._parent, "onopen");
36   }
37   void onmessage(T0)(scope auto ref Optional!(T0) onmessage) if (isTOrPointer!(T0, EventHandlerNonNull)) {
38     Object_Call_EventHandler__void(this._parent, "onmessage", !onmessage.empty, onmessage.front);
39   }
40   EventHandler onmessage()() {
41     return Object_Getter__EventHandler(this._parent, "onmessage");
42   }
43   void onerror(T0)(scope auto ref Optional!(T0) onerror) if (isTOrPointer!(T0, EventHandlerNonNull)) {
44     Object_Call_EventHandler__void(this._parent, "onerror", !onerror.empty, onerror.front);
45   }
46   EventHandler onerror()() {
47     return Object_Getter__EventHandler(this._parent, "onerror");
48   }
49   void close()() {
50     Object_Call__void(this._parent, "close");
51   }
52 }
53 struct EventSourceInit {
54   nothrow:
55   JsHandle handle;
56   alias handle this;
57   this(Handle h) {
58     this.handle = JsHandle(h);
59   }
60   static auto create() {
61     return EventSourceInit(libwasm_add__object());
62   }
63   void withCredentials()(bool withCredentials) {
64     Object_Call_bool__void(this.handle, "withCredentials", withCredentials);
65   }
66   bool withCredentials()() {
67     return Object_Getter__bool(this.handle, "withCredentials");
68   }
69 }
70 
71