xml_attrfirst
,
xml_attrnext
, xml_attrname
and xml_attrvalue
. The unfortunate similarity to xml_attrval
is, well, unfortunate, but I've written too much code that works with xml_attrval
to go back and change it now. Them's the
breaks when you design an API on the fly, I guess.
Let's do the iteration functions first; they're interesting. The other two are boring.
XMLAPI XML_ATTR * xml_attrfirst (XML * element) { if (!element) return NULL; return element->attrs; } XMLAPI XML_ATTR * xml_attrnext (XML_ATTR * attr) { if (!attr) return NULL; return attr->next; } |
const char *xml_attrname (XML_ATTR * attr) { return (attr->name); } const char *xml_attrvalue (XML_ATTR * attr) { return (attr->value); } |
This code and documentation are released under the terms of the GNU license. They are copyright (c) 2000-2003, Vivtek. All rights reserved except those explicitly granted under the terms of the GNU license. This presentation was created using LPML. |