1 module libwasm.bindings.Console;
2 
3 import libwasm.types;
4 
5 import memutils.ct: tuple;
6 @safe:
7 nothrow:
8 
9 struct ConsoleCounter {
10   nothrow:
11   JsHandle handle;
12   alias handle this;
13   this(Handle h) {
14     this.handle = JsHandle(h);
15   }
16   static auto create() {
17     return ConsoleCounter(libwasm_add__object());
18   }
19   void label()(string label) {
20     Object_Call_string__void(this.handle, "label", label);
21   }
22   string label()() {
23     return Object_Getter__string(this.handle, "label");
24   }
25   void count()(uint count) {
26     Object_Call_uint__void(this.handle, "count", count);
27   }
28   uint count()() {
29     return Object_Getter__uint(this.handle, "count");
30   }
31 }
32 struct ConsoleCounterError {
33   nothrow:
34   JsHandle handle;
35   alias handle this;
36   this(Handle h) {
37     this.handle = JsHandle(h);
38   }
39   static auto create() {
40     return ConsoleCounterError(libwasm_add__object());
41   }
42   void label()(string label) {
43     Object_Call_string__void(this.handle, "label", label);
44   }
45   string label()() {
46     return Object_Getter__string(this.handle, "label");
47   }
48   void error()(string error) {
49     Object_Call_string__void(this.handle, "error", error);
50   }
51   string error()() {
52     return Object_Getter__string(this.handle, "error");
53   }
54 }
55 struct ConsoleEvent {
56   nothrow:
57   JsHandle handle;
58   alias handle this;
59   this(Handle h) {
60     this.handle = JsHandle(h);
61   }
62   static auto create() {
63     return ConsoleEvent(libwasm_add__object());
64   }
65   void ID()(scope ref SumType!(uint, string) iD) {
66     Serialize_Object_VarArgCall!void(this.handle, "ID", "SumType!(uint,string)", tuple(libwasm.sumtype.match!(((uint v) => 0),((string v) => 1))(ID),tuple(libwasm.sumtype.match!(((uint v) => v),((string v) => uint.init))(ID),libwasm.sumtype.match!(((uint v) => string.init),((string v) => v))(ID))));
67   }
68   auto ID()() {
69     return Object_Getter__Handle(this.handle, "ID");
70   }
71   void innerID()(scope ref SumType!(uint, string) innerID) {
72     Serialize_Object_VarArgCall!void(this.handle, "innerID", "SumType!(uint,string)", tuple(libwasm.sumtype.match!(((uint v) => 0),((string v) => 1))(innerID),tuple(libwasm.sumtype.match!(((uint v) => v),((string v) => uint.init))(innerID),libwasm.sumtype.match!(((uint v) => string.init),((string v) => v))(innerID))));
73   }
74   auto innerID()() {
75     return Object_Getter__Handle(this.handle, "innerID");
76   }
77   void consoleID()(string consoleID) {
78     Object_Call_string__void(this.handle, "consoleID", consoleID);
79   }
80   string consoleID()() {
81     return Object_Getter__string(this.handle, "consoleID");
82   }
83   void addonId()(string addonId) {
84     Object_Call_string__void(this.handle, "addonId", addonId);
85   }
86   string addonId()() {
87     return Object_Getter__string(this.handle, "addonId");
88   }
89   void level()(string level) {
90     Object_Call_string__void(this.handle, "level", level);
91   }
92   string level()() {
93     return Object_Getter__string(this.handle, "level");
94   }
95   void filename()(string filename) {
96     Object_Call_string__void(this.handle, "filename", filename);
97   }
98   string filename()() {
99     return Object_Getter__string(this.handle, "filename");
100   }
101   void sourceId()(uint sourceId) {
102     Object_Call_uint__void(this.handle, "sourceId", sourceId);
103   }
104   uint sourceId()() {
105     return Object_Getter__uint(this.handle, "sourceId");
106   }
107   void lineNumber()(uint lineNumber) {
108     Object_Call_uint__void(this.handle, "lineNumber", lineNumber);
109   }
110   uint lineNumber()() {
111     return Object_Getter__uint(this.handle, "lineNumber");
112   }
113   void columnNumber()(uint columnNumber) {
114     Object_Call_uint__void(this.handle, "columnNumber", columnNumber);
115   }
116   uint columnNumber()() {
117     return Object_Getter__uint(this.handle, "columnNumber");
118   }
119   void functionName()(string functionName) {
120     Object_Call_string__void(this.handle, "functionName", functionName);
121   }
122   string functionName()() {
123     return Object_Getter__string(this.handle, "functionName");
124   }
125   void timeStamp()(double timeStamp) {
126     Object_Call_double__void(this.handle, "timeStamp", timeStamp);
127   }
128   double timeStamp()() {
129     return Object_Getter__double(this.handle, "timeStamp");
130   }
131   void arguments()(scope ref Sequence!(Any) arguments) {
132     Object_Call_Handle__void(this.handle, "arguments", arguments.handle);
133   }
134   auto arguments()() {
135     return Sequence!(Any)(Object_Getter__Handle(this.handle, "arguments"));
136   }
137   void styles()(scope ref Sequence!(Optional!(string)) styles) {
138     Object_Call_Handle__void(this.handle, "styles", styles.handle);
139   }
140   auto styles()() {
141     return Sequence!(Optional!(string))(Object_Getter__Handle(this.handle, "styles"));
142   }
143   void private_()(bool private_) {
144     Object_Call_bool__void(this.handle, "private", private_);
145   }
146   bool private_()() {
147     return Object_Getter__bool(this.handle, "private");
148   }
149   void groupName()(string groupName) {
150     Object_Call_string__void(this.handle, "groupName", groupName);
151   }
152   string groupName()() {
153     return Object_Getter__string(this.handle, "groupName");
154   }
155   void timer(T0)(scope auto ref T0 timer) {
156     import std.traits : isNumeric, isFloatingPoint, isSomeString;
157     if (isSomeString!T0) {
158       Object_Call_string__void(this.handle, "timer", cast(string) timer);
159       return;
160     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
161       Object_Call_long__void(this.handle, "timer", cast(long) timer);
162       return;
163     } else if (isFloatingPoint!T0) {
164       Object_Call_double__void(this.handle, "timer", cast(double) timer);
165       return;
166     }
167     // Any
168     Handle _handle_timer = getOrCreateHandle(timer);
169     Object_Call_Handle__void(this.handle, "timer", _handle_timer);
170     dropHandle!(T0)(_handle_timer);
171   }
172   auto timer()() {
173     return Any(Object_Getter__Handle(this.handle, "timer"));
174   }
175   void counter(T0)(scope auto ref T0 counter) {
176     import std.traits : isNumeric, isFloatingPoint, isSomeString;
177     if (isSomeString!T0) {
178       Object_Call_string__void(this.handle, "counter", cast(string) counter);
179       return;
180     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
181       Object_Call_long__void(this.handle, "counter", cast(long) counter);
182       return;
183     } else if (isFloatingPoint!T0) {
184       Object_Call_double__void(this.handle, "counter", cast(double) counter);
185       return;
186     }
187     // Any
188     Handle _handle_counter = getOrCreateHandle(counter);
189     Object_Call_Handle__void(this.handle, "counter", _handle_counter);
190     dropHandle!(T0)(_handle_counter);
191   }
192   auto counter()() {
193     return Any(Object_Getter__Handle(this.handle, "counter"));
194   }
195   void prefix()(string prefix) {
196     Object_Call_string__void(this.handle, "prefix", prefix);
197   }
198   string prefix()() {
199     return Object_Getter__string(this.handle, "prefix");
200   }
201 }
202 struct ConsoleInstance {
203   nothrow:
204   JsHandle handle;
205   alias handle this;
206   this(Handle h) {
207     this.handle = JsHandle(h);
208   }
209   void assert_(T1)(bool condition /* = false */, scope auto ref T1 data) {
210     // Any
211     Handle _handle_data = getOrCreateHandle(data);
212     Serialize_Object_VarArgCall!void(this.handle, "assert", "bool;Handle", tuple(condition, _handle_data));
213     dropHandle!(T1)(_handle_data);
214   }
215   void clear()() {
216     Object_Call__void(this.handle, "clear");
217   }
218   void count()(string label /* = "default" */) {
219     Object_Call_string__void(this.handle, "count", label);
220   }
221   void count()() {
222     Object_Call__void(this.handle, "count");
223   }
224   void countReset()(string label /* = "default" */) {
225     Object_Call_string__void(this.handle, "countReset", label);
226   }
227   void countReset()() {
228     Object_Call__void(this.handle, "countReset");
229   }
230   void debug_(T0)(scope auto ref T0 data) {
231     import std.traits : isNumeric, isFloatingPoint, isSomeString;
232     if (isSomeString!T0) {
233       Object_Call_string__void(this.handle, "debug", cast(string) data);
234       return;
235     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
236       Object_Call_long__void(this.handle, "debug", cast(long) data);
237       return;
238     } else if (isFloatingPoint!T0) {
239       Object_Call_double__void(this.handle, "debug", cast(double) data);
240       return;
241     }
242     // Any
243     Handle _handle_data = getOrCreateHandle(data);
244     Object_Call_Handle__void(this.handle, "debug", _handle_data);
245     dropHandle!(T0)(_handle_data);
246   }
247   void error(T0)(scope auto ref T0 data) {
248     import std.traits : isNumeric, isFloatingPoint, isSomeString;
249     if (isSomeString!T0) {
250       Object_Call_string__void(this.handle, "error", cast(string) data);
251       return;
252     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
253       Object_Call_long__void(this.handle, "error", cast(long) data);
254       return;
255     } else if (isFloatingPoint!T0) {
256       Object_Call_double__void(this.handle, "error", cast(double) data);
257       return;
258     }
259     // Any
260     Handle _handle_data = getOrCreateHandle(data);
261     Object_Call_Handle__void(this.handle, "error", _handle_data);
262     dropHandle!(T0)(_handle_data);
263   }
264   void info(T0)(scope auto ref T0 data) {
265     import std.traits : isNumeric, isFloatingPoint, isSomeString;
266     if (isSomeString!T0) {
267       Object_Call_string__void(this.handle, "info", cast(string) data);
268       return;
269     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
270       Object_Call_long__void(this.handle, "info", cast(long) data);
271       return;
272     } else if (isFloatingPoint!T0) {
273       Object_Call_double__void(this.handle, "info", cast(double) data);
274       return;
275     }
276     // Any
277     Handle _handle_data = getOrCreateHandle(data);
278     Object_Call_Handle__void(this.handle, "info", _handle_data);
279     dropHandle!(T0)(_handle_data);
280   }
281   void log(T0)(scope auto ref T0 data) {
282     import std.traits : isNumeric, isFloatingPoint, isSomeString;
283     if (isSomeString!T0) {
284       Object_Call_string__void(this.handle, "log", cast(string) data);
285       return;
286     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
287       Object_Call_long__void(this.handle, "log", cast(long) data);
288       return;
289     } else if (isFloatingPoint!T0) {
290       Object_Call_double__void(this.handle, "log", cast(double) data);
291       return;
292     }
293     // Any
294     Handle _handle_data = getOrCreateHandle(data);
295     Object_Call_Handle__void(this.handle, "log", _handle_data);
296     dropHandle!(T0)(_handle_data);
297   }
298   void table(T0)(scope auto ref T0 data) {
299     import std.traits : isNumeric, isFloatingPoint, isSomeString;
300     if (isSomeString!T0) {
301       Object_Call_string__void(this.handle, "table", cast(string) data);
302       return;
303     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
304       Object_Call_long__void(this.handle, "table", cast(long) data);
305       return;
306     } else if (isFloatingPoint!T0) {
307       Object_Call_double__void(this.handle, "table", cast(double) data);
308       return;
309     }
310     // Any
311     Handle _handle_data = getOrCreateHandle(data);
312     Object_Call_Handle__void(this.handle, "table", _handle_data);
313     dropHandle!(T0)(_handle_data);
314   }
315   void trace(T0)(scope auto ref T0 data) {
316     import std.traits : isNumeric, isFloatingPoint, isSomeString;
317     if (isSomeString!T0) {
318       Object_Call_string__void(this.handle, "trace", cast(string) data);
319       return;
320     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
321       Object_Call_long__void(this.handle, "trace", cast(long) data);
322       return;
323     } else if (isFloatingPoint!T0) {
324       Object_Call_double__void(this.handle, "trace", cast(double) data);
325       return;
326     }
327     // Any
328     Handle _handle_data = getOrCreateHandle(data);
329     Object_Call_Handle__void(this.handle, "trace", _handle_data);
330     dropHandle!(T0)(_handle_data);
331   }
332   void warn(T0)(scope auto ref T0 data) {
333     import std.traits : isNumeric, isFloatingPoint, isSomeString;
334     if (isSomeString!T0) {
335       Object_Call_string__void(this.handle, "warn", cast(string) data);
336       return;
337     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
338       Object_Call_long__void(this.handle, "warn", cast(long) data);
339       return;
340     } else if (isFloatingPoint!T0) {
341       Object_Call_double__void(this.handle, "warn", cast(double) data);
342       return;
343     }
344     // Any
345     Handle _handle_data = getOrCreateHandle(data);
346     Object_Call_Handle__void(this.handle, "warn", _handle_data);
347     dropHandle!(T0)(_handle_data);
348   }
349   void dir(T0)(scope auto ref T0 data) {
350     import std.traits : isNumeric, isFloatingPoint, isSomeString;
351     if (isSomeString!T0) {
352       Object_Call_string__void(this.handle, "dir", cast(string) data);
353       return;
354     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
355       Object_Call_long__void(this.handle, "dir", cast(long) data);
356       return;
357     } else if (isFloatingPoint!T0) {
358       Object_Call_double__void(this.handle, "dir", cast(double) data);
359       return;
360     }
361     // Any
362     Handle _handle_data = getOrCreateHandle(data);
363     Object_Call_Handle__void(this.handle, "dir", _handle_data);
364     dropHandle!(T0)(_handle_data);
365   }
366   void dirxml(T0)(scope auto ref T0 data) {
367     import std.traits : isNumeric, isFloatingPoint, isSomeString;
368     if (isSomeString!T0) {
369       Object_Call_string__void(this.handle, "dirxml", cast(string) data);
370       return;
371     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
372       Object_Call_long__void(this.handle, "dirxml", cast(long) data);
373       return;
374     } else if (isFloatingPoint!T0) {
375       Object_Call_double__void(this.handle, "dirxml", cast(double) data);
376       return;
377     }
378     // Any
379     Handle _handle_data = getOrCreateHandle(data);
380     Object_Call_Handle__void(this.handle, "dirxml", _handle_data);
381     dropHandle!(T0)(_handle_data);
382   }
383   void group(T0)(scope auto ref T0 data) {
384     import std.traits : isNumeric, isFloatingPoint, isSomeString;
385     if (isSomeString!T0) {
386       Object_Call_string__void(this.handle, "group", cast(string) data);
387       return;
388     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
389       Object_Call_long__void(this.handle, "group", cast(long) data);
390       return;
391     } else if (isFloatingPoint!T0) {
392       Object_Call_double__void(this.handle, "group", cast(double) data);
393       return;
394     }
395     // Any
396     Handle _handle_data = getOrCreateHandle(data);
397     Object_Call_Handle__void(this.handle, "group", _handle_data);
398     dropHandle!(T0)(_handle_data);
399   }
400   void groupCollapsed(T0)(scope auto ref T0 data) {
401     import std.traits : isNumeric, isFloatingPoint, isSomeString;
402     if (isSomeString!T0) {
403       Object_Call_string__void(this.handle, "groupCollapsed", cast(string) data);
404       return;
405     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
406       Object_Call_long__void(this.handle, "groupCollapsed", cast(long) data);
407       return;
408     } else if (isFloatingPoint!T0) {
409       Object_Call_double__void(this.handle, "groupCollapsed", cast(double) data);
410       return;
411     }
412     // Any
413     Handle _handle_data = getOrCreateHandle(data);
414     Object_Call_Handle__void(this.handle, "groupCollapsed", _handle_data);
415     dropHandle!(T0)(_handle_data);
416   }
417   void groupEnd()() {
418     Object_Call__void(this.handle, "groupEnd");
419   }
420   void time()(string label /* = "default" */) {
421     Object_Call_string__void(this.handle, "time", label);
422   }
423   void time()() {
424     Object_Call__void(this.handle, "time");
425   }
426   void timeLog(T1)(string label /* = "default" */, scope auto ref T1 data) {
427     // Any
428     Handle _handle_data = getOrCreateHandle(data);
429     Serialize_Object_VarArgCall!void(this.handle, "timeLog", "string;Handle", tuple(label, _handle_data));
430     dropHandle!(T1)(_handle_data);
431   }
432   void timeEnd()(string label /* = "default" */) {
433     Object_Call_string__void(this.handle, "timeEnd", label);
434   }
435   void timeEnd()() {
436     Object_Call__void(this.handle, "timeEnd");
437   }
438   void _exception(T0)(scope auto ref T0 data) {
439     import std.traits : isNumeric, isFloatingPoint, isSomeString;
440     if (isSomeString!T0) {
441       Object_Call_string__void(this.handle, "_exception", cast(string) data);
442       return;
443     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
444       Object_Call_long__void(this.handle, "_exception", cast(long) data);
445       return;
446     } else if (isFloatingPoint!T0) {
447       Object_Call_double__void(this.handle, "_exception", cast(double) data);
448       return;
449     }
450     // Any
451     Handle _handle_data = getOrCreateHandle(data);
452     Object_Call_Handle__void(this.handle, "_exception", _handle_data);
453     dropHandle!(T0)(_handle_data);
454   }
455   void timeStamp(T0)(scope auto ref T0 data) {
456     import std.traits : isNumeric, isFloatingPoint, isSomeString;
457     if (isSomeString!T0) {
458       Object_Call_string__void(this.handle, "timeStamp", cast(string) data);
459       return;
460     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
461       Object_Call_long__void(this.handle, "timeStamp", cast(long) data);
462       return;
463     } else if (isFloatingPoint!T0) {
464       Object_Call_double__void(this.handle, "timeStamp", cast(double) data);
465       return;
466     }
467     // Any
468     Handle _handle_data = getOrCreateHandle(data);
469     Object_Call_Handle__void(this.handle, "timeStamp", _handle_data);
470     dropHandle!(T0)(_handle_data);
471   }
472   void timeStamp()() {
473     Object_Call__void(this.handle, "timeStamp");
474   }
475   void profile(T0)(scope auto ref T0 data) {
476     import std.traits : isNumeric, isFloatingPoint, isSomeString;
477     if (isSomeString!T0) {
478       Object_Call_string__void(this.handle, "profile", cast(string) data);
479       return;
480     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
481       Object_Call_long__void(this.handle, "profile", cast(long) data);
482       return;
483     } else if (isFloatingPoint!T0) {
484       Object_Call_double__void(this.handle, "profile", cast(double) data);
485       return;
486     }
487     // Any
488     Handle _handle_data = getOrCreateHandle(data);
489     Object_Call_Handle__void(this.handle, "profile", _handle_data);
490     dropHandle!(T0)(_handle_data);
491   }
492   void profileEnd(T0)(scope auto ref T0 data) {
493     import std.traits : isNumeric, isFloatingPoint, isSomeString;
494     if (isSomeString!T0) {
495       Object_Call_string__void(this.handle, "profileEnd", cast(string) data);
496       return;
497     } else if (isNumeric!T0 && !isFloatingPoint!T0) {
498       Object_Call_long__void(this.handle, "profileEnd", cast(long) data);
499       return;
500     } else if (isFloatingPoint!T0) {
501       Object_Call_double__void(this.handle, "profileEnd", cast(double) data);
502       return;
503     }
504     // Any
505     Handle _handle_data = getOrCreateHandle(data);
506     Object_Call_Handle__void(this.handle, "profileEnd", _handle_data);
507     dropHandle!(T0)(_handle_data);
508   }
509   void reportForServiceWorkerScope()(string scope_, string message, string filename, uint lineNumber, uint columnNumber, ConsoleLevel level) {
510     Serialize_Object_VarArgCall!void(this.handle, "reportForServiceWorkerScope", "string;string;string;uint;uint;Enum", tuple(scope_, message, filename, lineNumber, columnNumber, level));
511   }
512 }
513 alias ConsoleInstanceDumpCallback = void delegate(string);
514 struct ConsoleInstanceOptions {
515   nothrow:
516   JsHandle handle;
517   alias handle this;
518   this(Handle h) {
519     this.handle = JsHandle(h);
520   }
521   static auto create() {
522     return ConsoleInstanceOptions(libwasm_add__object());
523   }
524   void dump()(ConsoleInstanceDumpCallback dump) {
525     ConsoleInstanceOptions_dump_Set(this.handle, dump);
526   }
527   ConsoleInstanceDumpCallback dump()() {
528     return ConsoleInstanceOptions_dump_Get(this.handle);
529   }
530   void prefix()(string prefix) {
531     Object_Call_string__void(this.handle, "prefix", prefix);
532   }
533   string prefix()() {
534     return Object_Getter__string(this.handle, "prefix");
535   }
536   void innerID()(string innerID) {
537     Object_Call_string__void(this.handle, "innerID", innerID);
538   }
539   string innerID()() {
540     return Object_Getter__string(this.handle, "innerID");
541   }
542   void consoleID()(string consoleID) {
543     Object_Call_string__void(this.handle, "consoleID", consoleID);
544   }
545   string consoleID()() {
546     return Object_Getter__string(this.handle, "consoleID");
547   }
548   void maxLogLevel()(ConsoleLogLevel maxLogLevel) {
549     Object_Call_int__void(this.handle, "maxLogLevel", maxLogLevel);
550   }
551   ConsoleLogLevel maxLogLevel()() {
552     return Object_Getter__int(this.handle, "maxLogLevel");
553   }
554   void maxLogLevelPref()(string maxLogLevelPref) {
555     Object_Call_string__void(this.handle, "maxLogLevelPref", maxLogLevelPref);
556   }
557   string maxLogLevelPref()() {
558     return Object_Getter__string(this.handle, "maxLogLevelPref");
559   }
560 }
561 enum ConsoleLevel {
562   log,
563   warning,
564   error
565 }
566 enum ConsoleLogLevel {
567   All,
568   Debug,
569   Log,
570   Info,
571   Clear,
572   Trace,
573   TimeLog,
574   TimeEnd,
575   Time,
576   Group,
577   GroupEnd,
578   Profile,
579   ProfileEnd,
580   Dir,
581   Dirxml,
582   Warn,
583   Error,
584   Off
585 }
586 struct ConsoleProfileEvent {
587   nothrow:
588   JsHandle handle;
589   alias handle this;
590   this(Handle h) {
591     this.handle = JsHandle(h);
592   }
593   static auto create() {
594     return ConsoleProfileEvent(libwasm_add__object());
595   }
596   void action()(string action) {
597     Object_Call_string__void(this.handle, "action", action);
598   }
599   string action()() {
600     return Object_Getter__string(this.handle, "action");
601   }
602   void arguments()(scope ref Sequence!(Any) arguments) {
603     Object_Call_Handle__void(this.handle, "arguments", arguments.handle);
604   }
605   auto arguments()() {
606     return Sequence!(Any)(Object_Getter__Handle(this.handle, "arguments"));
607   }
608 }
609 struct ConsoleStackEntry {
610   nothrow:
611   JsHandle handle;
612   alias handle this;
613   this(Handle h) {
614     this.handle = JsHandle(h);
615   }
616   static auto create() {
617     return ConsoleStackEntry(libwasm_add__object());
618   }
619   void filename()(string filename) {
620     Object_Call_string__void(this.handle, "filename", filename);
621   }
622   string filename()() {
623     return Object_Getter__string(this.handle, "filename");
624   }
625   void sourceId()(uint sourceId) {
626     Object_Call_uint__void(this.handle, "sourceId", sourceId);
627   }
628   uint sourceId()() {
629     return Object_Getter__uint(this.handle, "sourceId");
630   }
631   void lineNumber()(uint lineNumber) {
632     Object_Call_uint__void(this.handle, "lineNumber", lineNumber);
633   }
634   uint lineNumber()() {
635     return Object_Getter__uint(this.handle, "lineNumber");
636   }
637   void columnNumber()(uint columnNumber) {
638     Object_Call_uint__void(this.handle, "columnNumber", columnNumber);
639   }
640   uint columnNumber()() {
641     return Object_Getter__uint(this.handle, "columnNumber");
642   }
643   void functionName()(string functionName) {
644     Object_Call_string__void(this.handle, "functionName", functionName);
645   }
646   string functionName()() {
647     return Object_Getter__string(this.handle, "functionName");
648   }
649   void asyncCause(T0)(scope auto ref Optional!(T0) asyncCause) if (isTOrPointer!(T0, string)) {
650     Serialize_Object_VarArgCall!void(this.handle, "asyncCause", "Optional!(string)", tuple(!asyncCause.empty, asyncCause.front));
651   }
652   Optional!(string) asyncCause()() {
653     return Object_Getter__OptionalString(this.handle, "asyncCause");
654   }
655 }
656 struct ConsoleTimerError {
657   nothrow:
658   JsHandle handle;
659   alias handle this;
660   this(Handle h) {
661     this.handle = JsHandle(h);
662   }
663   static auto create() {
664     return ConsoleTimerError(libwasm_add__object());
665   }
666   void error()(string error) {
667     Object_Call_string__void(this.handle, "error", error);
668   }
669   string error()() {
670     return Object_Getter__string(this.handle, "error");
671   }
672   void name()(string name) {
673     Object_Call_string__void(this.handle, "name", name);
674   }
675   string name()() {
676     return Object_Getter__string(this.handle, "name");
677   }
678 }
679 struct ConsoleTimerLogOrEnd {
680   nothrow:
681   JsHandle handle;
682   alias handle this;
683   this(Handle h) {
684     this.handle = JsHandle(h);
685   }
686   static auto create() {
687     return ConsoleTimerLogOrEnd(libwasm_add__object());
688   }
689   void name()(string name) {
690     Object_Call_string__void(this.handle, "name", name);
691   }
692   string name()() {
693     return Object_Getter__string(this.handle, "name");
694   }
695   void duration()(double duration) {
696     Object_Call_double__void(this.handle, "duration", duration);
697   }
698   double duration()() {
699     return Object_Getter__double(this.handle, "duration");
700   }
701 }
702 struct ConsoleTimerStart {
703   nothrow:
704   JsHandle handle;
705   alias handle this;
706   this(Handle h) {
707     this.handle = JsHandle(h);
708   }
709   static auto create() {
710     return ConsoleTimerStart(libwasm_add__object());
711   }
712   void name()(string name) {
713     Object_Call_string__void(this.handle, "name", name);
714   }
715   string name()() {
716     return Object_Getter__string(this.handle, "name");
717   }
718 }
719 struct console {
720   nothrow:
721   static:
722   void assert_(T1)(bool condition /* = false */, scope auto ref T1 data) {
723     // Any
724     Handle _handle_data = getOrCreateHandle(data);
725     console_assert(this.handle, condition, _handle_data);
726     dropHandle!(T1)(_handle_data);
727   }
728   void clear()() {
729     Static_Call__void("console", "clear");
730   }
731   void count()(string label /* = "default" */) {
732     Static_Call_string__void("console", "count", label);
733   }
734   void count()() {
735     Static_Call__void("console", "count");
736   }
737   void countReset()(string label /* = "default" */) {
738     Static_Call_string__void("console", "countReset", label);
739   }
740   void countReset()() {
741     Static_Call__void("console", "countReset");
742   }
743   void debug_(T0)(scope auto ref T0 data) {
744     // Any
745     Handle _handle_data = getOrCreateHandle(data);
746     Static_Call_Handle__void("console", "debug", _handle_data);
747     dropHandle!(T0)(_handle_data);
748   }
749   void error(T0)(scope auto ref T0 data) {
750     // Any
751     Handle _handle_data = getOrCreateHandle(data);
752     Static_Call_Handle__void("console", "error", _handle_data);
753     dropHandle!(T0)(_handle_data);
754   }
755   void info(T0)(scope auto ref T0 data) {
756     // Any
757     Handle _handle_data = getOrCreateHandle(data);
758     Static_Call_Handle__void("console", "info", _handle_data);
759     dropHandle!(T0)(_handle_data);
760   }
761   void log(T0)(scope auto ref T0 data) {
762     // Any
763     Handle _handle_data = getOrCreateHandle(data);
764     Static_Call_Handle__void("console", "log", _handle_data);
765     dropHandle!(T0)(_handle_data);
766   }
767   void table(T0)(scope auto ref T0 data) {
768     // Any
769     Handle _handle_data = getOrCreateHandle(data);
770     Static_Call_Handle__void("console", "table", _handle_data);
771     dropHandle!(T0)(_handle_data);
772   }
773   void trace(T0)(scope auto ref T0 data) {
774     // Any
775     Handle _handle_data = getOrCreateHandle(data);
776     Static_Call_Handle__void("console", "trace", _handle_data);
777     dropHandle!(T0)(_handle_data);
778   }
779   void warn(T0)(scope auto ref T0 data) {
780     // Any
781     Handle _handle_data = getOrCreateHandle(data);
782     Static_Call_Handle__void("console", "warn", _handle_data);
783     dropHandle!(T0)(_handle_data);
784   }
785   void dir(T0)(scope auto ref T0 data) {
786     // Any
787     Handle _handle_data = getOrCreateHandle(data);
788     Static_Call_Handle__void("console", "dir", _handle_data);
789     dropHandle!(T0)(_handle_data);
790   }
791   void dirxml(T0)(scope auto ref T0 data) {
792     // Any
793     Handle _handle_data = getOrCreateHandle(data);
794     Static_Call_Handle__void("console", "dirxml", _handle_data);
795     dropHandle!(T0)(_handle_data);
796   }
797   void group(T0)(scope auto ref T0 data) {
798     // Any
799     Handle _handle_data = getOrCreateHandle(data);
800     Static_Call_Handle__void("console", "group", _handle_data);
801     dropHandle!(T0)(_handle_data);
802   }
803   void groupCollapsed(T0)(scope auto ref T0 data) {
804     // Any
805     Handle _handle_data = getOrCreateHandle(data);
806     Static_Call_Handle__void("console", "groupCollapsed", _handle_data);
807     dropHandle!(T0)(_handle_data);
808   }
809   void groupEnd()() {
810     Static_Call__void("console", "groupEnd");
811   }
812   void time()(string label /* = "default" */) {
813     Static_Call_string__void("console", "time", label);
814   }
815   void time()() {
816     Static_Call__void("console", "time");
817   }
818   void timeLog(T1)(string label /* = "default" */, scope auto ref T1 data) {
819     // Any
820     Handle _handle_data = getOrCreateHandle(data);
821     console_timeLog(this.handle, label, _handle_data);
822     dropHandle!(T1)(_handle_data);
823   }
824   void timeEnd()(string label /* = "default" */) {
825     Static_Call_string__void("console", "timeEnd", label);
826   }
827   void timeEnd()() {
828     Static_Call__void("console", "timeEnd");
829   }
830   void _exception(T0)(scope auto ref T0 data) {
831     // Any
832     Handle _handle_data = getOrCreateHandle(data);
833     Static_Call_Handle__void("console", "_exception", _handle_data);
834     dropHandle!(T0)(_handle_data);
835   }
836   void timeStamp(T0)(scope auto ref T0 data) {
837     // Any
838     Handle _handle_data = getOrCreateHandle(data);
839     Static_Call_Handle__void("console", "timeStamp", _handle_data);
840     dropHandle!(T0)(_handle_data);
841   }
842   void timeStamp()() {
843     Static_Call__void("console", "timeStamp");
844   }
845   void profile(T0)(scope auto ref T0 data) {
846     // Any
847     Handle _handle_data = getOrCreateHandle(data);
848     Static_Call_Handle__void("console", "profile", _handle_data);
849     dropHandle!(T0)(_handle_data);
850   }
851   void profileEnd(T0)(scope auto ref T0 data) {
852     // Any
853     Handle _handle_data = getOrCreateHandle(data);
854     Static_Call_Handle__void("console", "profileEnd", _handle_data);
855     dropHandle!(T0)(_handle_data);
856   }
857   enum bool IS_NATIVE_CONSOLE = true;
858   auto createInstance()(scope ref ConsoleInstanceOptions options) {
859     return ConsoleInstance(Static_Call_Handle__Handle("console", "createInstance", options.handle));
860   }
861   auto createInstance()() {
862     return ConsoleInstance(Static_Getter__Handle("console", "createInstance"));
863   }
864 }
865 
866 
867 extern (C) void ConsoleInstanceOptions_dump_Set(Handle, ConsoleInstanceDumpCallback);
868 extern (C) ConsoleInstanceDumpCallback ConsoleInstanceOptions_dump_Get(Handle);
869 extern (C) void console_assert(bool, Handle);
870 extern (C) void console_timeLog(string, Handle);