1 module libwasm.bindings.XPathResult; 2 3 import libwasm.types; 4 5 import memutils.ct: tuple; 6 import libwasm.bindings.Node; 7 8 @safe: 9 nothrow: 10 11 struct XPathResult { 12 nothrow: 13 JsHandle handle; 14 alias handle this; 15 this(Handle h) { 16 this.handle = JsHandle(h); 17 } 18 enum ushort ANY_TYPE = 0; 19 enum ushort NUMBER_TYPE = 1; 20 enum ushort STRING_TYPE = 2; 21 enum ushort BOOLEAN_TYPE = 3; 22 enum ushort UNORDERED_NODE_ITERATOR_TYPE = 4; 23 enum ushort ORDERED_NODE_ITERATOR_TYPE = 5; 24 enum ushort UNORDERED_NODE_SNAPSHOT_TYPE = 6; 25 enum ushort ORDERED_NODE_SNAPSHOT_TYPE = 7; 26 enum ushort ANY_UNORDERED_NODE_TYPE = 8; 27 enum ushort FIRST_ORDERED_NODE_TYPE = 9; 28 ushort resultType()() { 29 return Object_Getter__ushort(this.handle, "resultType"); 30 } 31 double numberValue()() { 32 return Object_Getter__double(this.handle, "numberValue"); 33 } 34 string stringValue()() { 35 return Object_Getter__string(this.handle, "stringValue"); 36 } 37 bool booleanValue()() { 38 return Object_Getter__bool(this.handle, "booleanValue"); 39 } 40 auto singleNodeValue()() { 41 return recastOpt!(Node)(Object_Getter__OptionalHandle(this.handle, "singleNodeValue")); 42 } 43 bool invalidIteratorState()() { 44 return Object_Getter__bool(this.handle, "invalidIteratorState"); 45 } 46 uint snapshotLength()() { 47 return Object_Getter__uint(this.handle, "snapshotLength"); 48 } 49 auto iterateNext()() { 50 return recastOpt!(Node)(Object_Getter__OptionalHandle(this.handle, "iterateNext")); 51 } 52 auto snapshotItem()(uint index) { 53 return recastOpt!(Node)(Object_Call_uint__OptionalHandle(this.handle, "snapshotItem", index)); 54 } 55 } 56 57