@@ -1436,6 +1436,20 @@ pub fn elementGetAttribute(elem: *Element, name: []const u8) !?[]const u8 {
14361436 return strToData (s .? );
14371437}
14381438
1439+ pub fn elementGetAttributeNS (elem : * Element , ns : []const u8 , name : []const u8 ) ! ? []const u8 {
1440+ var s : ? * String = undefined ;
1441+ const err = elementVtable (elem ).dom_element_get_attribute_ns .? (
1442+ elem ,
1443+ try strFromData (ns ),
1444+ try strFromData (name ),
1445+ & s ,
1446+ );
1447+ try DOMErr (err );
1448+ if (s == null ) return null ;
1449+
1450+ return strToData (s .? );
1451+ }
1452+
14391453pub fn elementSetAttribute (elem : * Element , qname : []const u8 , value : []const u8 ) ! void {
14401454 const err = elementVtable (elem ).dom_element_set_attribute .? (
14411455 elem ,
@@ -1445,11 +1459,35 @@ pub fn elementSetAttribute(elem: *Element, qname: []const u8, value: []const u8)
14451459 try DOMErr (err );
14461460}
14471461
1462+ pub fn elementSetAttributeNS (
1463+ elem : * Element ,
1464+ ns : []const u8 ,
1465+ qname : []const u8 ,
1466+ value : []const u8 ,
1467+ ) ! void {
1468+ const err = elementVtable (elem ).dom_element_set_attribute_ns .? (
1469+ elem ,
1470+ try strFromData (ns ),
1471+ try strFromData (qname ),
1472+ try strFromData (value ),
1473+ );
1474+ try DOMErr (err );
1475+ }
1476+
14481477pub fn elementRemoveAttribute (elem : * Element , qname : []const u8 ) ! void {
14491478 const err = elementVtable (elem ).dom_element_remove_attribute .? (elem , try strFromData (qname ));
14501479 try DOMErr (err );
14511480}
14521481
1482+ pub fn elementRemoveAttributeNS (elem : * Element , ns : []const u8 , qname : []const u8 ) ! void {
1483+ const err = elementVtable (elem ).dom_element_remove_attribute_ns .? (
1484+ elem ,
1485+ try strFromData (ns ),
1486+ try strFromData (qname ),
1487+ );
1488+ try DOMErr (err );
1489+ }
1490+
14531491pub fn elementHasAttribute (elem : * Element , qname : []const u8 ) ! bool {
14541492 var res : bool = undefined ;
14551493 const err = elementVtable (elem ).dom_element_has_attribute .? (elem , try strFromData (qname ), & res );
0 commit comments