<argumentname="name"direction="I"><type>const char *</type><description>Element name or NULL for any</description></argument>
<argumentname="attr"direction="I"><type>const char *</type><description>Attribute name, or NULL for none</description></argument>
<argumentname="value"direction="I"><type>const char *</type><description>Attribute value, or NULL for any</description></argument>
<argumentname="descend"direction="I"><type>int</type><description>Descend into tree - MXML_DESCEND, MXML_NO_DESCEND, or MXML_DESCEND_FIRST</description></argument>
</function>
<functionname="mxmlLoadFile"><returnvalue><description>First node or NULL if the file could not be read.</description><type>mxml_node_t
*</type></returnvalue>
@ -57,9 +65,14 @@ If no top node is provided, the XML file MUST be well-formed with a
single parent node like <?xml> for the entire file. The callback
function returns the value type that should be used for child nodes.
If MXML_NO_CALLBACK is specified then all child nodes will be either
MXML_ELEMENT or MXML_TEXT nodes.</description><argument
<argumentname="fp"direction="I"><type>FILE *</type><description>File to read from</description></argument>
<argumentname="(*cb)(mxml_node_t *node)"direction="I"><type>mxml_type_t</type><description>Callback function or MXML_NO_CALLBACK</description></argument>
</function>
<functionname="mxmlLoadString"><returnvalue><description>First node or NULL if the string has errors.</description><type>mxml_node_t
*</type></returnvalue>
@ -70,9 +83,14 @@ If no top node is provided, the XML string MUST be well-formed with a
single parent node like <?xml> for the entire string. The callback
function returns the value type that should be used for child nodes.
If MXML_NO_CALLBACK is specified then all child nodes will be either
MXML_ELEMENT or MXML_TEXT nodes.</description><argument
<argumentname="s"direction="I"><type>const char *</type><description>String to load</description></argument>
<argumentname="(*cb)(mxml_node_t *node)"direction="I"><type>mxml_type_t</type><description>Callback function or MXML_NO_CALLBACK</description></argument>
<argumentname="..."direction="I"><type/><description>Additional args as needed</description></argument>
</function>
<functionname="mxmlRemove"><description>Remove a node from its parent.
@ -150,8 +175,8 @@ representation of the XML node tree. The string should be freed
using the free() function when you are done with it. NULL is returned
if the node would produce an empty string or if the string cannot be
allocated.</description><argument
name="(*cb)(mxml_node_t *node, int ws)" direction="I"><type>mxml_node_t *node,
int</type><description>Whitespace callback or MXML_NO_CALLBACK</description></argument>
name="node" direction="I"><type>mxml_node_t *</type><description>Node to write</description></argument>
<argumentname="(*cb)(mxml_node_t *node, int ws)"direction="I"><type>int</type><description>Whitespace callback or MXML_NO_CALLBACK</description></argument>
</function>
<functionname="mxmlSaveFile"><returnvalue><description>0 on success, -1 on error.</description><type>int</type></returnvalue>
<description>Save an XML tree to a file.
@ -161,8 +186,9 @@ character or nul (0) before and after each element. If MXML_NO_CALLBACK
is specified, whitespace will only be added before MXML_TEXT nodes
with leading whitespace and before attribute names inside opening
element tags.</description><argument
name="(*cb)(mxml_node_t *node, int ws)" direction="I"><type>mxml_node_t *node,
FILE *fp, int</type><description>Whitespace callback or MXML_NO_CALLBACK</description></argument>
name="node" direction="I"><type>mxml_node_t *</type><description>Node to write</description></argument>
<argumentname="fp"direction="I"><type>FILE *</type><description>File to write to</description></argument>
<argumentname="(*cb)(mxml_node_t *node, int ws)"direction="I"><type>int</type><description>Whitespace callback or MXML_NO_CALLBACK</description></argument>
</function>
<functionname="mxmlSaveString"><returnvalue><description>Size of string</description><type>int</type></returnvalue>
<description>Save an XML node tree to a string.
@ -170,46 +196,55 @@ FILE *fp, int</type><description>Whitespace callback or MXML_NO_CALLBACK</descri
This function returns the total number of bytes that would be
required for the string but only copies (bufsize - 1) characters
into the specified buffer.</description><argument
name="(*cb)(mxml_node_t *node, int ws)" direction="I"><type>mxml_node_t *node,
char *buffer, int bufsize, int</type><description>Whitespace callback or MXML_NO_CALLBACK</description></argument>
name="node" direction="I"><type>mxml_node_t *</type><description>Node to write</description></argument>
<argumentname="bufsize"direction="I"><type>int</type><description>Size of string buffer</description></argument>
<argumentname="(*cb)(mxml_node_t *node, int ws)"direction="I"><type>int</type><description>Whitespace callback or MXML_NO_CALLBACK</description></argument>
</function>
<functionname="mxmlSetElement"><returnvalue><description>0 on success, -1 on failure</description><type>int</type></returnvalue>
<description>Set the name of an element node.
If the node is not changed if it is not an element node.</description><argument
name="name" direction="I"><type>mxml_node_t *node, const char *</type><description>New name string</description></argument>
The node is not changed if it is not an element node.</description><argument
name="node" direction="I"><type>mxml_node_t *</type><description>Node to set</description></argument>
<argumentname="name"direction="I"><type>const char *</type><description>New name string</description></argument>
</function>
<functionname="mxmlSetInteger"><returnvalue><description>0 on success, -1 on failure</description><type>int</type></returnvalue>
<description>Set the value of an integer node.
If the node is not changed if it is not an integer node.</description><argument
<functionname="mxmlSetTextf"><returnvalue><description>0 on success, -1 on failure</description><type>int</type></returnvalue>
<description>Set the value of a text node to a formatted string.
If the node is not changed if it is not a text node.</description><argument
name="format," direction="I"><type>mxml_node_t *node, int whitespace, const
char *</type><description>Additional arguments as needed</description></argument>
The node is not changed if it is not a text node.</description><argument
name="node" direction="I"><type>mxml_node_t *</type><description>Node to set</description></argument>
<argumentname="whitespace"direction="I"><type>int</type><description>1 = leading whitespace, 0 = no whitespace</description></argument>
<argumentname="format"direction="I"><type>const char *</type><description>Printf-style format string</description></argument>
<argumentname="..."direction="I"><type/><description>Additional arguments as needed</description></argument>
</function>
<functionname="mxmlWalkNext"><returnvalue><description>Next node or NULL</description><type>mxml_node_t
*</type></returnvalue>
@ -218,7 +253,9 @@ char *</type><description>Additional arguments as needed</description></argument
The descend argument controls whether the first child is considered
to be the next node. The top node argument constrains the walk to
the node's children.</description><argument
name="descend" direction="I"><type>mxml_node_t *node, mxml_node_t *top, int</type><description>Descend into tree - MXML_DESCEND, MXML_NO_DESCEND, or MXML_DESCEND_FIRST</description></argument>
<argumentname="descend"direction="I"><type>int</type><description>Descend into tree - MXML_DESCEND, MXML_NO_DESCEND, or MXML_DESCEND_FIRST</description></argument>
</function>
<functionname="mxmlWalkPrev"><returnvalue><description>Previous node or NULL</description><type>mxml_node_t
The descend argument controls whether the previous node's last child
is considered to be the previous node. The top node argument constrains
the walk to the node's children.</description><argument
name="descend" direction="I"><type>mxml_node_t *node, mxml_node_t *top, int</type><description>Descend into tree - MXML_DESCEND, MXML_NO_DESCEND, or MXML_DESCEND_FIRST</description></argument>
<argumentname="descend"direction="I"><type>int</type><description>Descend into tree - MXML_DESCEND, MXML_NO_DESCEND, or MXML_DESCEND_FIRST</description></argument>
</function>
<structname="mxml_attr_s"><description>An XML element attribute value.</description><variable