netsurf: add NodeList

This commit is contained in:
Pierre Tachoire
2023-10-02 09:13:23 +02:00
parent a91ca87422
commit b8205e7498

View File

@@ -228,6 +228,29 @@ pub const NodeType = enum(u4) {
notation = c.DOM_NOTATION_NODE, // historical
};
// NodeList
pub const NodeList = c.struct_dom_nodelist;
pub fn nodeListLength(nodeList: *NodeList) u32 {
var ln: u32 = undefined;
_ = c.dom_nodelist_get_length(nodeList, &ln);
return ln;
}
pub fn nodeListItem(nodeList: *NodeList, index: u32) ?*Node {
var n: [*c]c.struct_dom_node = undefined;
_ = c._dom_nodelist_item(nodeList, index, &n);
if (n == null) {
return null;
}
// cast [*c]c.struct_dom_node into *Node
const res: *Node = @ptrCast(n);
return res;
}
// Node
pub const Node = c.dom_node_internal;