1 module libwasm.bindings.CheckerboardReportService; 2 3 import libwasm.types; 4 5 import memutils.ct: tuple; 6 @safe: 7 nothrow: 8 9 enum CheckerboardReason { 10 severe, 11 recent 12 } 13 struct CheckerboardReport { 14 nothrow: 15 JsHandle handle; 16 alias handle this; 17 this(Handle h) { 18 this.handle = JsHandle(h); 19 } 20 static auto create() { 21 return CheckerboardReport(libwasm_add__object()); 22 } 23 void severity()(uint severity) { 24 Object_Call_uint__void(this.handle, "severity", severity); 25 } 26 uint severity()() { 27 return Object_Getter__uint(this.handle, "severity"); 28 } 29 void timestamp()(scope ref DOMTimeStamp timestamp) { 30 Object_Call_Handle__void(this.handle, "timestamp", timestamp.handle); 31 } 32 auto timestamp()() { 33 return DOMTimeStamp(Object_Getter__Handle(this.handle, "timestamp")); 34 } 35 void log()(string log) { 36 Object_Call_string__void(this.handle, "log", log); 37 } 38 string log()() { 39 return Object_Getter__string(this.handle, "log"); 40 } 41 void reason()(CheckerboardReason reason) { 42 Object_Call_int__void(this.handle, "reason", reason); 43 } 44 CheckerboardReason reason()() { 45 return Object_Getter__int(this.handle, "reason"); 46 } 47 } 48 struct CheckerboardReportService { 49 nothrow: 50 JsHandle handle; 51 alias handle this; 52 this(Handle h) { 53 this.handle = JsHandle(h); 54 } 55 auto getReports()() { 56 return Sequence!(CheckerboardReport)(Object_Getter__Handle(this.handle, "getReports")); 57 } 58 bool isRecordingEnabled()() { 59 return Object_Getter__bool(this.handle, "isRecordingEnabled"); 60 } 61 void setRecordingEnabled()(bool aEnabled) { 62 Object_Call_bool__void(this.handle, "setRecordingEnabled", aEnabled); 63 } 64 void flushActiveReports()() { 65 Object_Call__void(this.handle, "flushActiveReports"); 66 } 67 } 68 69