1 module libwasm.bindings.IDBFileHandle;
2 
3 import libwasm.types;
4 
5 import memutils.ct: tuple;
6 import libwasm.bindings.Blob;
7 import libwasm.bindings.EventHandler;
8 import libwasm.bindings.EventTarget;
9 import libwasm.bindings.FileMode;
10 import libwasm.bindings.IDBFileRequest;
11 import libwasm.bindings.IDBMutableFile;
12 
13 @safe:
14 nothrow:
15 
16 struct IDBFileHandle {
17   nothrow:
18   libwasm.bindings.EventTarget.EventTarget _parent;
19   alias _parent this;
20   this(Handle h) {
21     _parent = .EventTarget(h);
22   }
23   auto mutableFile()() {
24     return recastOpt!(IDBMutableFile)(Object_Getter__OptionalHandle(this._parent, "mutableFile"));
25   }
26   auto fileHandle()() {
27     return recastOpt!(IDBMutableFile)(Object_Getter__OptionalHandle(this._parent, "fileHandle"));
28   }
29   FileMode mode()() {
30     return Object_Getter__int(this._parent, "mode");
31   }
32   bool active()() {
33     return Object_Getter__bool(this._parent, "active");
34   }
35   void location(T0)(scope auto ref Optional!(T0) location) if (isTOrPointer!(T0, uint)) {
36     Serialize_Object_VarArgCall!void(this._parent, "location", "Optional!(uint)", tuple(!location.empty, location.front));
37   }
38   Optional!(uint) location()() {
39     return Object_Getter__OptionalUint(this._parent, "location");
40   }
41   auto getMetadata()(scope ref IDBFileMetadataParameters parameters) {
42     return recastOpt!(IDBFileRequest)(Serialize_Object_VarArgCall!(Optional!Handle)(this._parent, "getMetadata", "Handle", tuple(cast(Handle)parameters.handle)));
43   }
44   auto getMetadata()() {
45     return recastOpt!(IDBFileRequest)(Object_Getter__OptionalHandle(this._parent, "getMetadata"));
46   }
47   auto readAsArrayBuffer()(uint size) {
48     return recastOpt!(IDBFileRequest)(Object_Call_uint__OptionalHandle(this._parent, "readAsArrayBuffer", size));
49   }
50   auto readAsText(T1)(uint size, scope auto ref Optional!(T1) encoding /* = no!(string) */) if (isTOrPointer!(T1, string)) {
51     return recastOpt!(IDBFileRequest)(Serialize_Object_VarArgCall!(Optional!Handle)(this._parent, "readAsText", "uint;Optional!(string)", tuple(size, !encoding.empty, encoding.front)));
52   }
53   auto readAsText()(uint size) {
54     return recastOpt!(IDBFileRequest)(Object_Call_uint__OptionalHandle(this._parent, "readAsText", size));
55   }
56   auto write()(scope ref SumType!(string, ArrayBuffer, ArrayBufferView, Blob) value) {
57     return recastOpt!(IDBFileRequest)(Serialize_Object_VarArgCall!(Optional!Handle)(this._parent, "write", "SumType!(string,Handle,Handle,Handle)", tuple(libwasm.sumtype.match!(((string v) => 0),((ref value.Types[1] v) => 1),((ref value.Types[2] v) => 2),((ref value.Types[3] v) => 3))(value),tuple(libwasm.sumtype.match!(((string v) => v),((ref value.Types[1] v) => string.init),((ref value.Types[2] v) => string.init),((ref value.Types[3] v) => string.init))(value),libwasm.sumtype.match!(((string v) => Handle.init),((ref value.Types[1] v) => cast(Handle)v.handle),((ref value.Types[2] v) => Handle.init),((ref value.Types[3] v) => Handle.init))(value),libwasm.sumtype.match!(((string v) => Handle.init),((ref value.Types[1] v) => Handle.init),((ref value.Types[2] v) => cast(Handle)v.handle),((ref value.Types[3] v) => Handle.init))(value),libwasm.sumtype.match!(((string v) => Handle.init),((ref value.Types[1] v) => Handle.init),((ref value.Types[2] v) => Handle.init),((ref value.Types[3] v) => cast(Handle)v.handle))(value)))));
58   }
59   auto append()(scope ref SumType!(string, ArrayBuffer, ArrayBufferView, Blob) value) {
60     return recastOpt!(IDBFileRequest)(Serialize_Object_VarArgCall!(Optional!Handle)(this._parent, "append", "SumType!(string,Handle,Handle,Handle)", tuple(libwasm.sumtype.match!(((string v) => 0),((ref value.Types[1] v) => 1),((ref value.Types[2] v) => 2),((ref value.Types[3] v) => 3))(value),tuple(libwasm.sumtype.match!(((string v) => v),((ref value.Types[1] v) => string.init),((ref value.Types[2] v) => string.init),((ref value.Types[3] v) => string.init))(value),libwasm.sumtype.match!(((string v) => Handle.init),((ref value.Types[1] v) => cast(Handle)v.handle),((ref value.Types[2] v) => Handle.init),((ref value.Types[3] v) => Handle.init))(value),libwasm.sumtype.match!(((string v) => Handle.init),((ref value.Types[1] v) => Handle.init),((ref value.Types[2] v) => cast(Handle)v.handle),((ref value.Types[3] v) => Handle.init))(value),libwasm.sumtype.match!(((string v) => Handle.init),((ref value.Types[1] v) => Handle.init),((ref value.Types[2] v) => Handle.init),((ref value.Types[3] v) => cast(Handle)v.handle))(value)))));
61   }
62   auto truncate()(uint size) {
63     return recastOpt!(IDBFileRequest)(Object_Call_uint__OptionalHandle(this._parent, "truncate", size));
64   }
65   auto truncate()() {
66     return recastOpt!(IDBFileRequest)(Object_Getter__OptionalHandle(this._parent, "truncate"));
67   }
68   auto flush()() {
69     return recastOpt!(IDBFileRequest)(Object_Getter__OptionalHandle(this._parent, "flush"));
70   }
71   void abort()() {
72     Object_Call__void(this._parent, "abort");
73   }
74   void oncomplete(T0)(scope auto ref Optional!(T0) oncomplete) if (isTOrPointer!(T0, EventHandlerNonNull)) {
75     Object_Call_EventHandler__void(this._parent, "oncomplete", !oncomplete.empty, oncomplete.front);
76   }
77   EventHandler oncomplete()() {
78     return Object_Getter__EventHandler(this._parent, "oncomplete");
79   }
80   void onabort(T0)(scope auto ref Optional!(T0) onabort) if (isTOrPointer!(T0, EventHandlerNonNull)) {
81     Object_Call_EventHandler__void(this._parent, "onabort", !onabort.empty, onabort.front);
82   }
83   EventHandler onabort()() {
84     return Object_Getter__EventHandler(this._parent, "onabort");
85   }
86   void onerror(T0)(scope auto ref Optional!(T0) onerror) if (isTOrPointer!(T0, EventHandlerNonNull)) {
87     Object_Call_EventHandler__void(this._parent, "onerror", !onerror.empty, onerror.front);
88   }
89   EventHandler onerror()() {
90     return Object_Getter__EventHandler(this._parent, "onerror");
91   }
92 }
93 struct IDBFileMetadataParameters {
94   nothrow:
95   JsHandle handle;
96   alias handle this;
97   this(Handle h) {
98     this.handle = JsHandle(h);
99   }
100   static auto create() {
101     return IDBFileMetadataParameters(libwasm_add__object());
102   }
103   void size()(bool size) {
104     Object_Call_bool__void(this.handle, "size", size);
105   }
106   bool size()() {
107     return Object_Getter__bool(this.handle, "size");
108   }
109   void lastModified()(bool lastModified) {
110     Object_Call_bool__void(this.handle, "lastModified", lastModified);
111   }
112   bool lastModified()() {
113     return Object_Getter__bool(this.handle, "lastModified");
114   }
115 }
116 
117