1 module libwasm.bindings.IDBIndex;
2 
3 import libwasm.types;
4 
5 import memutils.ct: tuple;
6 import libwasm.bindings.IDBCursor;
7 import libwasm.bindings.IDBObjectStore;
8 import libwasm.bindings.IDBRequest;
9 
10 @safe:
11 nothrow:
12 
13 struct IDBIndex {
14   nothrow:
15   JsHandle handle;
16   alias handle this;
17   this(Handle h) {
18     this.handle = JsHandle(h);
19   }
20   void name()(string name) {
21     Object_Call_string__void(this.handle, "name", name);
22   }
23   string name()() {
24     return Object_Getter__string(this.handle, "name");
25   }
26   auto objectStore()() {
27     return IDBObjectStore(Object_Getter__Handle(this.handle, "objectStore"));
28   }
29   auto keyPath()() {
30     return Any(Object_Getter__Handle(this.handle, "keyPath"));
31   }
32   bool multiEntry()() {
33     return Object_Getter__bool(this.handle, "multiEntry");
34   }
35   bool unique()() {
36     return Object_Getter__bool(this.handle, "unique");
37   }
38   Optional!(string) locale()() {
39     return Object_Getter__OptionalString(this.handle, "locale");
40   }
41   bool isAutoLocale()() {
42     return Object_Getter__bool(this.handle, "isAutoLocale");
43   }
44   auto openCursor(T0)(scope auto ref T0 range, IDBCursorDirection direction /* = "next" */) {
45     // Any
46     Handle _handle_range = getOrCreateHandle(range);
47     auto result = IDBRequest(Serialize_Object_VarArgCall!Handle(this.handle, "openCursor", "Handle;Enum", tuple(_handle_range, direction)));
48     dropHandle!(T0)(_handle_range);
49     return result;
50   }
51   auto openCursor(T0)(scope auto ref T0 range) {
52     // Any
53     Handle _handle_range = getOrCreateHandle(range);
54     auto result = IDBRequest(Object_Call_Handle__Handle(this.handle, "openCursor", _handle_range));
55     dropHandle!(T0)(_handle_range);
56     return result;
57   }
58   auto openCursor()() {
59     return IDBRequest(Object_Getter__Handle(this.handle, "openCursor"));
60   }
61   auto openKeyCursor(T0)(scope auto ref T0 range, IDBCursorDirection direction /* = "next" */) {
62     // Any
63     Handle _handle_range = getOrCreateHandle(range);
64     auto result = IDBRequest(Serialize_Object_VarArgCall!Handle(this.handle, "openKeyCursor", "Handle;Enum", tuple(_handle_range, direction)));
65     dropHandle!(T0)(_handle_range);
66     return result;
67   }
68   auto openKeyCursor(T0)(scope auto ref T0 range) {
69     // Any
70     Handle _handle_range = getOrCreateHandle(range);
71     auto result = IDBRequest(Object_Call_Handle__Handle(this.handle, "openKeyCursor", _handle_range));
72     dropHandle!(T0)(_handle_range);
73     return result;
74   }
75   auto openKeyCursor()() {
76     return IDBRequest(Object_Getter__Handle(this.handle, "openKeyCursor"));
77   }
78   auto get(T0)(scope auto ref T0 key) {
79     // Any
80     Handle _handle_key = getOrCreateHandle(key);
81     auto result = IDBRequest(Object_Call_Handle__Handle(this.handle, "get", _handle_key));
82     dropHandle!(T0)(_handle_key);
83     return result;
84   }
85   auto getKey(T0)(scope auto ref T0 key) {
86     // Any
87     Handle _handle_key = getOrCreateHandle(key);
88     auto result = IDBRequest(Object_Call_Handle__Handle(this.handle, "getKey", _handle_key));
89     dropHandle!(T0)(_handle_key);
90     return result;
91   }
92   auto count(T0)(scope auto ref T0 key) {
93     // Any
94     Handle _handle_key = getOrCreateHandle(key);
95     auto result = IDBRequest(Object_Call_Handle__Handle(this.handle, "count", _handle_key));
96     dropHandle!(T0)(_handle_key);
97     return result;
98   }
99   auto count()() {
100     return IDBRequest(Object_Getter__Handle(this.handle, "count"));
101   }
102   auto mozGetAll(T0)(scope auto ref T0 key, uint limit) {
103     // Any
104     Handle _handle_key = getOrCreateHandle(key);
105     auto result = IDBRequest(Serialize_Object_VarArgCall!Handle(this.handle, "mozGetAll", "Handle;uint", tuple(_handle_key, limit)));
106     dropHandle!(T0)(_handle_key);
107     return result;
108   }
109   auto mozGetAll(T0)(scope auto ref T0 key) {
110     // Any
111     Handle _handle_key = getOrCreateHandle(key);
112     auto result = IDBRequest(Object_Call_Handle__Handle(this.handle, "mozGetAll", _handle_key));
113     dropHandle!(T0)(_handle_key);
114     return result;
115   }
116   auto mozGetAll()() {
117     return IDBRequest(Object_Getter__Handle(this.handle, "mozGetAll"));
118   }
119   auto mozGetAllKeys(T0)(scope auto ref T0 key, uint limit) {
120     // Any
121     Handle _handle_key = getOrCreateHandle(key);
122     auto result = IDBRequest(Serialize_Object_VarArgCall!Handle(this.handle, "mozGetAllKeys", "Handle;uint", tuple(_handle_key, limit)));
123     dropHandle!(T0)(_handle_key);
124     return result;
125   }
126   auto mozGetAllKeys(T0)(scope auto ref T0 key) {
127     // Any
128     Handle _handle_key = getOrCreateHandle(key);
129     auto result = IDBRequest(Object_Call_Handle__Handle(this.handle, "mozGetAllKeys", _handle_key));
130     dropHandle!(T0)(_handle_key);
131     return result;
132   }
133   auto mozGetAllKeys()() {
134     return IDBRequest(Object_Getter__Handle(this.handle, "mozGetAllKeys"));
135   }
136   auto getAll(T0)(scope auto ref T0 key, uint limit) {
137     // Any
138     Handle _handle_key = getOrCreateHandle(key);
139     auto result = IDBRequest(Serialize_Object_VarArgCall!Handle(this.handle, "getAll", "Handle;uint", tuple(_handle_key, limit)));
140     dropHandle!(T0)(_handle_key);
141     return result;
142   }
143   auto getAll(T0)(scope auto ref T0 key) {
144     // Any
145     Handle _handle_key = getOrCreateHandle(key);
146     auto result = IDBRequest(Object_Call_Handle__Handle(this.handle, "getAll", _handle_key));
147     dropHandle!(T0)(_handle_key);
148     return result;
149   }
150   auto getAll()() {
151     return IDBRequest(Object_Getter__Handle(this.handle, "getAll"));
152   }
153   auto getAllKeys(T0)(scope auto ref T0 key, uint limit) {
154     // Any
155     Handle _handle_key = getOrCreateHandle(key);
156     auto result = IDBRequest(Serialize_Object_VarArgCall!Handle(this.handle, "getAllKeys", "Handle;uint", tuple(_handle_key, limit)));
157     dropHandle!(T0)(_handle_key);
158     return result;
159   }
160   auto getAllKeys(T0)(scope auto ref T0 key) {
161     // Any
162     Handle _handle_key = getOrCreateHandle(key);
163     auto result = IDBRequest(Object_Call_Handle__Handle(this.handle, "getAllKeys", _handle_key));
164     dropHandle!(T0)(_handle_key);
165     return result;
166   }
167   auto getAllKeys()() {
168     return IDBRequest(Object_Getter__Handle(this.handle, "getAllKeys"));
169   }
170 }
171 struct IDBIndexParameters {
172   nothrow:
173   JsHandle handle;
174   alias handle this;
175   this(Handle h) {
176     this.handle = JsHandle(h);
177   }
178   static auto create() {
179     return IDBIndexParameters(libwasm_add__object());
180   }
181   void unique()(bool unique) {
182     Object_Call_bool__void(this.handle, "unique", unique);
183   }
184   bool unique()() {
185     return Object_Getter__bool(this.handle, "unique");
186   }
187   void multiEntry()(bool multiEntry) {
188     Object_Call_bool__void(this.handle, "multiEntry", multiEntry);
189   }
190   bool multiEntry()() {
191     return Object_Getter__bool(this.handle, "multiEntry");
192   }
193   void locale(T0)(scope auto ref Optional!(T0) locale) if (isTOrPointer!(T0, string)) {
194     Serialize_Object_VarArgCall!void(this.handle, "locale", "Optional!(string)", tuple(!locale.empty, locale.front));
195   }
196   Optional!(string) locale()() {
197     return Object_Getter__OptionalString(this.handle, "locale");
198   }
199 }
200 
201