diff options
Diffstat (limited to 'xml/mxml.xml')
-rw-r--r-- | xml/mxml.xml | 1627 |
1 files changed, 1627 insertions, 0 deletions
diff --git a/xml/mxml.xml b/xml/mxml.xml new file mode 100644 index 0000000..bf6b520 --- /dev/null +++ b/xml/mxml.xml @@ -0,0 +1,1627 @@ +<?xml version="1.0" encoding="utf-8"?> +<mxmldoc xmlns="http://www.easysw.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.minixml.org/mxmldoc.xsd"> + <function name="mxmlAdd"> + <description>Add a node to a tree. + +Adds the specified node to the parent. If the child argument is not +NULL, puts the new node before or after the specified child depending +on the value of the where argument. If the child argument is NULL, +puts the new node at the beginning of the child list (MXML_ADD_BEFORE) +or at the end of the child list (MXML_ADD_AFTER). The constant +MXML_ADD_TO_PARENT can be used to specify a NULL child pointer.</description> + <argument name="parent" direction="I"> + <type>mxml_node_t *</type> + <description>Parent node</description> + </argument> + <argument name="where" direction="I"> + <type>int</type> + <description>Where to add, MXML_ADD_BEFORE or MXML_ADD_AFTER</description> + </argument> + <argument name="child" direction="I"> + <type>mxml_node_t *</type> + <description>Child node for where or MXML_ADD_TO_PARENT</description> + </argument> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to add</description> + </argument> + </function> + <function name="mxmlDelete"> + <description>Delete a node and all of its children. + +If the specified node has a parent, this function first removes the +node from its parent using the mxmlRemove() function.</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to delete</description> + </argument> + </function> + <function name="mxmlElementDeleteAttr"> + <description>Delete an attribute. + +@since Mini-XML 2.4@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Element</description> + </argument> + <argument name="name" direction="I"> + <type>const char *</type> + <description>Attribute name</description> + </argument> + </function> + <function name="mxmlElementGetAttr"> + <returnvalue> + <type>const char *</type> + <description>Attribute value or NULL</description> + </returnvalue> + <description>Get an attribute. + +This function returns NULL if the node is not an element or the +named attribute does not exist.</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Element node</description> + </argument> + <argument name="name" direction="I"> + <type>const char *</type> + <description>Name of attribute</description> + </argument> + </function> + <function name="mxmlElementSetAttr"> + <description>Set an attribute. + +If the named attribute already exists, the value of the attribute +is replaced by the new string value. The string value is copied +into the element node. This function does nothing if the node is +not an element.</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Element node</description> + </argument> + <argument name="name" direction="I"> + <type>const char *</type> + <description>Name of attribute</description> + </argument> + <argument name="value" direction="I"> + <type>const char *</type> + <description>Attribute value</description> + </argument> + </function> + <function name="mxmlElementSetAttrf"> + <description>Set an attribute with a formatted value. + +If the named attribute already exists, the value of the attribute +is replaced by the new formatted string. The formatted string value is +copied into the element node. This function does nothing if the node +is not an element. + +@since Mini-XML 2.3@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Element node</description> + </argument> + <argument name="name" direction="I"> + <type>const char *</type> + <description>Name of attribute</description> + </argument> + <argument name="format" direction="I"> + <type>const char *</type> + <description>Printf-style attribute value</description> + </argument> + <argument name="..." direction="I"> + <type /> <description>Additional arguments as needed</description> + </argument> + </function> + <function name="mxmlEntityAddCallback"> + <returnvalue> + <type>int</type> + <description>0 on success, -1 on failure</description> + </returnvalue> + <description>Add a callback to convert entities to Unicode.</description> + <argument name="cb" direction="I"> + <type>mxml_entity_cb_t</type> + <description>Callback function to add</description> + </argument> + </function> + <function name="mxmlEntityGetName"> + <returnvalue> + <type>const char *</type> + <description>Entity name or NULL</description> + </returnvalue> + <description>Get the name that corresponds to the character value. + +If val does not need to be represented by a named entity, NULL is returned.</description> + <argument name="val" direction="I"> + <type>int</type> + <description>Character value</description> + </argument> + </function> + <function name="mxmlEntityGetValue"> + <returnvalue> + <type>int</type> + <description>Character value or -1 on error</description> + </returnvalue> + <description>Get the character corresponding to a named entity. + +The entity name can also be a numeric constant. -1 is returned if the +name is not known.</description> + <argument name="name" direction="I"> + <type>const char *</type> + <description>Entity name</description> + </argument> + </function> + <function name="mxmlEntityRemoveCallback"> + <description>Remove a callback.</description> + <argument name="cb" direction="I"> + <type>mxml_entity_cb_t</type> + <description>Callback function to remove</description> + </argument> + </function> + <function name="mxmlFindElement"> + <returnvalue> + <type>mxml_node_t *</type> + <description>Element node or NULL</description> + </returnvalue> + <description>Find the named element. + +The search is constrained by the name, attribute name, and value; any +NULL names or values are treated as wildcards, so different kinds of +searches can be implemented by looking for all elements of a given name +or all elements with a specific attribute. The descend argument determines +whether the search descends into child nodes; normally you will use +MXML_DESCEND_FIRST for the initial search and MXML_NO_DESCEND to find +additional direct descendents of the node. The top node argument +constrains the search to a particular node's children.</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Current node</description> + </argument> + <argument name="top" direction="I"> + <type>mxml_node_t *</type> + <description>Top node</description> + </argument> + <argument name="name" direction="I"> + <type>const char *</type> + <description>Element name or NULL for any</description> + </argument> + <argument name="attr" direction="I"> + <type>const char *</type> + <description>Attribute name, or NULL for none</description> + </argument> + <argument name="value" direction="I"> + <type>const char *</type> + <description>Attribute value, or NULL for any</description> + </argument> + <argument name="descend" direction="I"> + <type>int</type> + <description>Descend into tree - MXML_DESCEND, MXML_NO_DESCEND, or MXML_DESCEND_FIRST</description> + </argument> + </function> + <function name="mxmlFindPath"> + <returnvalue> + <type>mxml_node_t *</type> + <description>Found node or NULL</description> + </returnvalue> + <description>Find a node with the given path. + +The "path" is a slash-separated list of element names. The name "*" is +considered a wildcard for one or more levels of elements. For example, +"foo/one/two", "bar/two/one", "*/one", and so forth. + +The first child node of the found node is returned if the given node has +children and the first child is a value node. + +@since Mini-XML 2.7@</description> + <argument name="top" direction="I"> + <type>mxml_node_t *</type> + <description>Top node</description> + </argument> + <argument name="path" direction="I"> + <type>const char *</type> + <description>Path to element</description> + </argument> + </function> + <function name="mxmlGetCDATA"> + <returnvalue> + <type>const char *</type> + <description>CDATA value or NULL</description> + </returnvalue> + <description>Get the value for a CDATA node. + +@code NULL@ is returned if the node is not a CDATA element. + +@since Mini-XML 2.7@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to get</description> + </argument> + </function> + <function name="mxmlGetCustom"> + <returnvalue> + <type>const void *</type> + <description>Custom value or NULL</description> + </returnvalue> + <description>Get the value for a custom node. + +@code NULL@ is returned if the node (or its first child) is not a custom +value node. + +@since Mini-XML 2.7@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to get</description> + </argument> + </function> + <function name="mxmlGetElement"> + <returnvalue> + <type>const char *</type> + <description>Element name or NULL</description> + </returnvalue> + <description>Get the name for an element node. + +@code NULL@ is returned if the node is not an element node. + +@since Mini-XML 2.7@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to get</description> + </argument> + </function> + <function name="mxmlGetFirstChild"> + <returnvalue> + <type>mxml_node_t *</type> + <description>First child or NULL</description> + </returnvalue> + <description>Get the first child of an element node. + +@code NULL@ is returned if the node is not an element node or if the node +has no children. + +@since Mini-XML 2.7@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to get</description> + </argument> + </function> + <function name="mxmlGetInteger"> + <returnvalue> + <type>int</type> + <description>Integer value or 0</description> + </returnvalue> + <description>Get the integer value from the specified node or its +first child. + +0 is returned if the node (or its first child) is not an integer value node. + +@since Mini-XML 2.7@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to get</description> + </argument> + </function> + <function name="mxmlGetLastChild"> + <returnvalue> + <type>mxml_node_t *</type> + <description>Last child or NULL</description> + </returnvalue> + <description>Get the last child of an element node. + +@code NULL@ is returned if the node is not an element node or if the node +has no children. + +@since Mini-XML 2.7@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to get</description> + </argument> + </function> + <function name="mxmlGetNextSibling"> + <returnvalue> + <type>mxml_node_t *</type> + <description>Get the next node for the current parent. + +@code NULL@ is returned if this is the last child for the current parent. + +@since Mini-XML 2.7@</description> + </returnvalue> + <description>Return the node type...</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to get</description> + </argument> + </function> + <function name="mxmlGetOpaque"> + <returnvalue> + <type>const char *</type> + <description>Opaque string or NULL</description> + </returnvalue> + <description>Get an opaque string value for a node or its first child. + +@code NULL@ is returned if the node (or its first child) is not an opaque +value node. + +@since Mini-XML 2.7@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to get</description> + </argument> + </function> + <function name="mxmlGetParent"> + <returnvalue> + <type>mxml_node_t *</type> + <description>Parent node or NULL</description> + </returnvalue> + <description>Get the parent node. + +@code NULL@ is returned for a root node. + +@since Mini-XML 2.7@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to get</description> + </argument> + </function> + <function name="mxmlGetPrevSibling"> + <returnvalue> + <type>mxml_node_t *</type> + <description>Previous node or NULL</description> + </returnvalue> + <description>Get the previous node for the current parent. + +@code NULL@ is returned if this is the first child for the current parent. + +@since Mini-XML 2.7@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to get</description> + </argument> + </function> + <function name="mxmlGetReal"> + <returnvalue> + <type>double</type> + <description>Real value or 0.0</description> + </returnvalue> + <description>Get the real value for a node or its first child. + +0.0 is returned if the node (or its first child) is not a real value node. + +@since Mini-XML 2.7@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to get</description> + </argument> + </function> + <function name="mxmlGetRefCount"> + <returnvalue> + <type>int</type> + <description>Reference count</description> + </returnvalue> + <description>Get the current reference (use) count for a node. + +The initial reference count of new nodes is 1. Use the @link mxmlRetain@ +and @link mxmlRelease@ functions to increment and decrement a node's +reference count. + +@since Mini-XML 2.7@.</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node</description> + </argument> + </function> + <function name="mxmlGetText"> + <returnvalue> + <type>const char *</type> + <description>Text string or NULL</description> + </returnvalue> + <description>Get the text value for a node or its first child. + +@code NULL@ is returned if the node (or its first child) is not a text node. +The "whitespace" argument can be NULL. + +@since Mini-XML 2.7@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to get</description> + </argument> + <argument name="whitespace" direction="O"> + <type>int *</type> + <description>1 if string is preceded by whitespace, 0 otherwise</description> + </argument> + </function> + <function name="mxmlGetType"> + <returnvalue> + <type>mxml_type_t</type> + <description>Type of node</description> + </returnvalue> + <description>Get the node type. + +@code MXML_IGNORE@ is returned if "node" is @code NULL@. + +@since Mini-XML 2.7@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to get</description> + </argument> + </function> + <function name="mxmlGetUserData"> + <returnvalue> + <type>void *</type> + <description>User data pointer</description> + </returnvalue> + <description>Get the user data pointer for a node. + +@since Mini-XML 2.7@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to get</description> + </argument> + </function> + <function name="mxmlIndexDelete"> + <description>Delete an index.</description> + <argument name="ind" direction="I"> + <type>mxml_index_t *</type> + <description>Index to delete</description> + </argument> + </function> + <function name="mxmlIndexEnum"> + <returnvalue> + <type>mxml_node_t *</type> + <description>Next node or NULL if there is none</description> + </returnvalue> + <description>Return the next node in the index. + +Nodes are returned in the sorted order of the index.</description> + <argument name="ind" direction="I"> + <type>mxml_index_t *</type> + <description>Index to enumerate</description> + </argument> + </function> + <function name="mxmlIndexFind"> + <returnvalue> + <type>mxml_node_t *</type> + <description>Node or NULL if none found</description> + </returnvalue> + <description>Find the next matching node. + +You should call mxmlIndexReset() prior to using this function for +the first time with a particular set of "element" and "value" +strings. Passing NULL for both "element" and "value" is equivalent +to calling mxmlIndexEnum().</description> + <argument name="ind" direction="I"> + <type>mxml_index_t *</type> + <description>Index to search</description> + </argument> + <argument name="element" direction="I"> + <type>const char *</type> + <description>Element name to find, if any</description> + </argument> + <argument name="value" direction="I"> + <type>const char *</type> + <description>Attribute value, if any</description> + </argument> + </function> + <function name="mxmlIndexGetCount"> + <returnvalue> + <type>int</type> + <description>Number of nodes in index</description> + </returnvalue> + <description>Get the number of nodes in an index. + +@since Mini-XML 2.7@</description> + <argument name="ind" direction="I"> + <type>mxml_index_t *</type> + <description>Index of nodes</description> + </argument> + </function> + <function name="mxmlIndexNew"> + <returnvalue> + <type>mxml_index_t *</type> + <description>New index</description> + </returnvalue> + <description>Create a new index. + +The index will contain all nodes that contain the named element and/or +attribute. If both "element" and "attr" are NULL, then the index will +contain a sorted list of the elements in the node tree. Nodes are +sorted by element name and optionally by attribute value if the "attr" +argument is not NULL.</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>XML node tree</description> + </argument> + <argument name="element" direction="I"> + <type>const char *</type> + <description>Element to index or NULL for all</description> + </argument> + <argument name="attr" direction="I"> + <type>const char *</type> + <description>Attribute to index or NULL for none</description> + </argument> + </function> + <function name="mxmlIndexReset"> + <returnvalue> + <type>mxml_node_t *</type> + <description>First node or NULL if there is none</description> + </returnvalue> + <description>Reset the enumeration/find pointer in the index and +return the first node in the index. + +This function should be called prior to using mxmlIndexEnum() or +mxmlIndexFind() for the first time.</description> + <argument name="ind" direction="I"> + <type>mxml_index_t *</type> + <description>Index to reset</description> + </argument> + </function> + <function name="mxmlLoadFd"> + <returnvalue> + <type>mxml_node_t *</type> + <description>First node or NULL if the file could not be read.</description> + </returnvalue> + <description>Load a file descriptor into an XML node tree. + +The nodes in the specified file are added to the specified top node. +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. + +The constants MXML_INTEGER_CALLBACK, MXML_OPAQUE_CALLBACK, +MXML_REAL_CALLBACK, and MXML_TEXT_CALLBACK are defined for loading +child nodes of the specified type.</description> + <argument name="top" direction="I"> + <type>mxml_node_t *</type> + <description>Top node</description> + </argument> + <argument name="fd" direction="I"> + <type>int</type> + <description>File descriptor to read from</description> + </argument> + <argument name="cb" direction="I"> + <type>mxml_load_cb_t</type> + <description>Callback function or MXML_NO_CALLBACK</description> + </argument> + </function> + <function name="mxmlLoadFile"> + <returnvalue> + <type>mxml_node_t *</type> + <description>First node or NULL if the file could not be read.</description> + </returnvalue> + <description>Load a file into an XML node tree. + +The nodes in the specified file are added to the specified top node. +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. + +The constants MXML_INTEGER_CALLBACK, MXML_OPAQUE_CALLBACK, +MXML_REAL_CALLBACK, and MXML_TEXT_CALLBACK are defined for loading +child nodes of the specified type.</description> + <argument name="top" direction="I"> + <type>mxml_node_t *</type> + <description>Top node</description> + </argument> + <argument name="fp" direction="I"> + <type>FILE *</type> + <description>File to read from</description> + </argument> + <argument name="cb" direction="I"> + <type>mxml_load_cb_t</type> + <description>Callback function or MXML_NO_CALLBACK</description> + </argument> + </function> + <function name="mxmlLoadString"> + <returnvalue> + <type>mxml_node_t *</type> + <description>First node or NULL if the string has errors.</description> + </returnvalue> + <description>Load a string into an XML node tree. + +The nodes in the specified string are added to the specified top node. +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. + +The constants MXML_INTEGER_CALLBACK, MXML_OPAQUE_CALLBACK, +MXML_REAL_CALLBACK, and MXML_TEXT_CALLBACK are defined for loading +child nodes of the specified type.</description> + <argument name="top" direction="I"> + <type>mxml_node_t *</type> + <description>Top node</description> + </argument> + <argument name="s" direction="I"> + <type>const char *</type> + <description>String to load</description> + </argument> + <argument name="cb" direction="I"> + <type>mxml_load_cb_t</type> + <description>Callback function or MXML_NO_CALLBACK</description> + </argument> + </function> + <function name="mxmlNewCDATA"> + <returnvalue> + <type>mxml_node_t *</type> + <description>New node</description> + </returnvalue> + <description>Create a new CDATA node. + +The new CDATA node is added to the end of the specified parent's child +list. The constant MXML_NO_PARENT can be used to specify that the new +CDATA node has no parent. The data string must be nul-terminated and +is copied into the new node. CDATA nodes use the MXML_ELEMENT type. + +@since Mini-XML 2.3@</description> + <argument name="parent" direction="I"> + <type>mxml_node_t *</type> + <description>Parent node or MXML_NO_PARENT</description> + </argument> + <argument name="data" direction="I"> + <type>const char *</type> + <description>Data string</description> + </argument> + </function> + <function name="mxmlNewCustom"> + <returnvalue> + <type>mxml_node_t *</type> + <description>New node</description> + </returnvalue> + <description>Create a new custom data node. + +The new custom node is added to the end of the specified parent's child +list. The constant MXML_NO_PARENT can be used to specify that the new +element node has no parent. NULL can be passed when the data in the +node is not dynamically allocated or is separately managed. + +@since Mini-XML 2.1@</description> + <argument name="parent" direction="I"> + <type>mxml_node_t *</type> + <description>Parent node or MXML_NO_PARENT</description> + </argument> + <argument name="data" direction="I"> + <type>void *</type> + <description>Pointer to data</description> + </argument> + <argument name="destroy" direction="I"> + <type>mxml_custom_destroy_cb_t</type> + <description>Function to destroy data</description> + </argument> + </function> + <function name="mxmlNewElement"> + <returnvalue> + <type>mxml_node_t *</type> + <description>New node</description> + </returnvalue> + <description>Create a new element node. + +The new element node is added to the end of the specified parent's child +list. The constant MXML_NO_PARENT can be used to specify that the new +element node has no parent.</description> + <argument name="parent" direction="I"> + <type>mxml_node_t *</type> + <description>Parent node or MXML_NO_PARENT</description> + </argument> + <argument name="name" direction="I"> + <type>const char *</type> + <description>Name of element</description> + </argument> + </function> + <function name="mxmlNewInteger"> + <returnvalue> + <type>mxml_node_t *</type> + <description>New node</description> + </returnvalue> + <description>Create a new integer node. + +The new integer node is added to the end of the specified parent's child +list. The constant MXML_NO_PARENT can be used to specify that the new +integer node has no parent.</description> + <argument name="parent" direction="I"> + <type>mxml_node_t *</type> + <description>Parent node or MXML_NO_PARENT</description> + </argument> + <argument name="integer" direction="I"> + <type>int</type> + <description>Integer value</description> + </argument> + </function> + <function name="mxmlNewOpaque"> + <returnvalue> + <type>mxml_node_t *</type> + <description>New node</description> + </returnvalue> + <description>Create a new opaque string. + +The new opaque node is added to the end of the specified parent's child +list. The constant MXML_NO_PARENT can be used to specify that the new +opaque node has no parent. The opaque string must be nul-terminated and +is copied into the new node.</description> + <argument name="parent" direction="I"> + <type>mxml_node_t *</type> + <description>Parent node or MXML_NO_PARENT</description> + </argument> + <argument name="opaque" direction="I"> + <type>const char *</type> + <description>Opaque string</description> + </argument> + </function> + <function name="mxmlNewReal"> + <returnvalue> + <type>mxml_node_t *</type> + <description>New node</description> + </returnvalue> + <description>Create a new real number node. + +The new real number node is added to the end of the specified parent's +child list. The constant MXML_NO_PARENT can be used to specify that +the new real number node has no parent.</description> + <argument name="parent" direction="I"> + <type>mxml_node_t *</type> + <description>Parent node or MXML_NO_PARENT</description> + </argument> + <argument name="real" direction="I"> + <type>double</type> + <description>Real number value</description> + </argument> + </function> + <function name="mxmlNewText"> + <returnvalue> + <type>mxml_node_t *</type> + <description>New node</description> + </returnvalue> + <description>Create a new text fragment node. + +The new text node is added to the end of the specified parent's child +list. The constant MXML_NO_PARENT can be used to specify that the new +text node has no parent. The whitespace parameter is used to specify +whether leading whitespace is present before the node. The text +string must be nul-terminated and is copied into the new node.</description> + <argument name="parent" direction="I"> + <type>mxml_node_t *</type> + <description>Parent node or MXML_NO_PARENT</description> + </argument> + <argument name="whitespace" direction="I"> + <type>int</type> + <description>1 = leading whitespace, 0 = no whitespace</description> + </argument> + <argument name="string" direction="I"> + <type>const char *</type> + <description>String</description> + </argument> + </function> + <function name="mxmlNewTextf"> + <returnvalue> + <type>mxml_node_t *</type> + <description>New node</description> + </returnvalue> + <description>Create a new formatted text fragment node. + +The new text node is added to the end of the specified parent's child +list. The constant MXML_NO_PARENT can be used to specify that the new +text node has no parent. The whitespace parameter is used to specify +whether leading whitespace is present before the node. The format +string must be nul-terminated and is formatted into the new node.</description> + <argument name="parent" direction="I"> + <type>mxml_node_t *</type> + <description>Parent node or MXML_NO_PARENT</description> + </argument> + <argument name="whitespace" direction="I"> + <type>int</type> + <description>1 = leading whitespace, 0 = no whitespace</description> + </argument> + <argument name="format" direction="I"> + <type>const char *</type> + <description>Printf-style frmat string</description> + </argument> + <argument name="..." direction="I"> + <type /> <description>Additional args as needed</description> + </argument> + </function> + <function name="mxmlNewXML"> + <returnvalue> + <type>mxml_node_t *</type> + <description>New ?xml node</description> + </returnvalue> + <description>Create a new XML document tree. + +The "version" argument specifies the version number to put in the +?xml element node. If NULL, version 1.0 is assumed. + +@since Mini-XML 2.3@</description> + <argument name="version" direction="I"> + <type>const char *</type> + <description>Version number to use</description> + </argument> + </function> + <function name="mxmlRelease"> + <returnvalue> + <type>int</type> + <description>New reference count</description> + </returnvalue> + <description>Release a node. + +When the reference count reaches zero, the node (and any children) +is deleted via mxmlDelete(). + +@since Mini-XML 2.3@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node</description> + </argument> + </function> + <function name="mxmlRemove"> + <description>Remove a node from its parent. + +Does not free memory used by the node - use mxmlDelete() for that. +This function does nothing if the node has no parent.</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to remove</description> + </argument> + </function> + <function name="mxmlRetain"> + <returnvalue> + <type>int</type> + <description>New reference count</description> + </returnvalue> + <description>Retain a node. + +@since Mini-XML 2.3@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node</description> + </argument> + </function> + <function name="mxmlSAXLoadFd"> + <returnvalue> + <type>mxml_node_t *</type> + <description>First node or NULL if the file could not be read.</description> + </returnvalue> + <description>Load a file descriptor into an XML node tree +using a SAX callback. + +The nodes in the specified file are added to the specified top node. +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. + +The constants MXML_INTEGER_CALLBACK, MXML_OPAQUE_CALLBACK, +MXML_REAL_CALLBACK, and MXML_TEXT_CALLBACK are defined for loading +child nodes of the specified type. + +The SAX callback must call mxmlRetain() for any nodes that need to +be kept for later use. Otherwise, nodes are deleted when the parent +node is closed or after each data, comment, CDATA, or directive node. + +@since Mini-XML 2.3@</description> + <argument name="top" direction="I"> + <type>mxml_node_t *</type> + <description>Top node</description> + </argument> + <argument name="fd" direction="I"> + <type>int</type> + <description>File descriptor to read from</description> + </argument> + <argument name="cb" direction="I"> + <type>mxml_load_cb_t</type> + <description>Callback function or MXML_NO_CALLBACK</description> + </argument> + <argument name="sax_cb" direction="I"> + <type>mxml_sax_cb_t</type> + <description>SAX callback or MXML_NO_CALLBACK</description> + </argument> + <argument name="sax_data" direction="I"> + <type>void *</type> + <description>SAX user data</description> + </argument> + </function> + <function name="mxmlSAXLoadFile"> + <returnvalue> + <type>mxml_node_t *</type> + <description>First node or NULL if the file could not be read.</description> + </returnvalue> + <description>Load a file into an XML node tree +using a SAX callback. + +The nodes in the specified file are added to the specified top node. +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. + +The constants MXML_INTEGER_CALLBACK, MXML_OPAQUE_CALLBACK, +MXML_REAL_CALLBACK, and MXML_TEXT_CALLBACK are defined for loading +child nodes of the specified type. + +The SAX callback must call mxmlRetain() for any nodes that need to +be kept for later use. Otherwise, nodes are deleted when the parent +node is closed or after each data, comment, CDATA, or directive node. + +@since Mini-XML 2.3@</description> + <argument name="top" direction="I"> + <type>mxml_node_t *</type> + <description>Top node</description> + </argument> + <argument name="fp" direction="I"> + <type>FILE *</type> + <description>File to read from</description> + </argument> + <argument name="cb" direction="I"> + <type>mxml_load_cb_t</type> + <description>Callback function or MXML_NO_CALLBACK</description> + </argument> + <argument name="sax_cb" direction="I"> + <type>mxml_sax_cb_t</type> + <description>SAX callback or MXML_NO_CALLBACK</description> + </argument> + <argument name="sax_data" direction="I"> + <type>void *</type> + <description>SAX user data</description> + </argument> + </function> + <function name="mxmlSAXLoadString"> + <returnvalue> + <type>mxml_node_t *</type> + <description>First node or NULL if the string has errors.</description> + </returnvalue> + <description>Load a string into an XML node tree +using a SAX callback. + +The nodes in the specified string are added to the specified top node. +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. + +The constants MXML_INTEGER_CALLBACK, MXML_OPAQUE_CALLBACK, +MXML_REAL_CALLBACK, and MXML_TEXT_CALLBACK are defined for loading +child nodes of the specified type. + +The SAX callback must call mxmlRetain() for any nodes that need to +be kept for later use. Otherwise, nodes are deleted when the parent +node is closed or after each data, comment, CDATA, or directive node. + +@since Mini-XML 2.3@</description> + <argument name="top" direction="I"> + <type>mxml_node_t *</type> + <description>Top node</description> + </argument> + <argument name="s" direction="I"> + <type>const char *</type> + <description>String to load</description> + </argument> + <argument name="cb" direction="I"> + <type>mxml_load_cb_t</type> + <description>Callback function or MXML_NO_CALLBACK</description> + </argument> + <argument name="sax_cb" direction="I"> + <type>mxml_sax_cb_t</type> + <description>SAX callback or MXML_NO_CALLBACK</description> + </argument> + <argument name="sax_data" direction="I"> + <type>void *</type> + <description>SAX user data</description> + </argument> + </function> + <function name="mxmlSaveAllocString"> + <returnvalue> + <type>char *</type> + <description>Allocated string or NULL</description> + </returnvalue> + <description>Save an XML tree to an allocated string. + +This function returns a pointer to a string containing the textual +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. + +The callback argument specifies a function that returns a whitespace +string or NULL 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="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to write</description> + </argument> + <argument name="cb" direction="I"> + <type>mxml_save_cb_t</type> + <description>Whitespace callback or MXML_NO_CALLBACK</description> + </argument> + </function> + <function name="mxmlSaveFd"> + <returnvalue> + <type>int</type> + <description>0 on success, -1 on error.</description> + </returnvalue> + <description>Save an XML tree to a file descriptor. + +The callback argument specifies a function that returns a whitespace +string or NULL 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="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to write</description> + </argument> + <argument name="fd" direction="I"> + <type>int</type> + <description>File descriptor to write to</description> + </argument> + <argument name="cb" direction="I"> + <type>mxml_save_cb_t</type> + <description>Whitespace callback or MXML_NO_CALLBACK</description> + </argument> + </function> + <function name="mxmlSaveFile"> + <returnvalue> + <type>int</type> + <description>0 on success, -1 on error.</description> + </returnvalue> + <description>Save an XML tree to a file. + +The callback argument specifies a function that returns a whitespace +string or NULL 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="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to write</description> + </argument> + <argument name="fp" direction="I"> + <type>FILE *</type> + <description>File to write to</description> + </argument> + <argument name="cb" direction="I"> + <type>mxml_save_cb_t</type> + <description>Whitespace callback or MXML_NO_CALLBACK</description> + </argument> + </function> + <function name="mxmlSaveString"> + <returnvalue> + <type>int</type> + <description>Size of string</description> + </returnvalue> + <description>Save an XML node tree to a string. + +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. + +The callback argument specifies a function that returns a whitespace +string or NULL 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="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to write</description> + </argument> + <argument name="buffer" direction="I"> + <type>char *</type> + <description>String buffer</description> + </argument> + <argument name="bufsize" direction="I"> + <type>int</type> + <description>Size of string buffer</description> + </argument> + <argument name="cb" direction="I"> + <type>mxml_save_cb_t</type> + <description>Whitespace callback or MXML_NO_CALLBACK</description> + </argument> + </function> + <function name="mxmlSetCDATA"> + <returnvalue> + <type>int</type> + <description>0 on success, -1 on failure</description> + </returnvalue> + <description>Set the element name of a CDATA node. + +The node is not changed if it (or its first child) is not a CDATA element node. + +@since Mini-XML 2.3@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to set</description> + </argument> + <argument name="data" direction="I"> + <type>const char *</type> + <description>New data string</description> + </argument> + </function> + <function name="mxmlSetCustom"> + <returnvalue> + <type>int</type> + <description>0 on success, -1 on failure</description> + </returnvalue> + <description>Set the data and destructor of a custom data node. + +The node is not changed if it (or its first child) is not a custom node. + +@since Mini-XML 2.1@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to set</description> + </argument> + <argument name="data" direction="I"> + <type>void *</type> + <description>New data pointer</description> + </argument> + <argument name="destroy" direction="I"> + <type>mxml_custom_destroy_cb_t</type> + <description>New destructor function</description> + </argument> + </function> + <function name="mxmlSetCustomHandlers"> + <description>Set the handling functions for custom data. + +The load function accepts a node pointer and a data string and must +return 0 on success and non-zero on error. + +The save function accepts a node pointer and must return a malloc'd +string on success and NULL on error.</description> + <argument name="load" direction="I"> + <type>mxml_custom_load_cb_t</type> + <description>Load function</description> + </argument> + <argument name="save" direction="I"> + <type>mxml_custom_save_cb_t</type> + <description>Save function</description> + </argument> + </function> + <function name="mxmlSetElement"> + <returnvalue> + <type>int</type> + <description>0 on success, -1 on failure</description> + </returnvalue> + <description>Set the name of an element node. + +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> + <argument name="name" direction="I"> + <type>const char *</type> + <description>New name string</description> + </argument> + </function> + <function name="mxmlSetErrorCallback"> + <description>Set the error message callback.</description> + <argument name="cb" direction="I"> + <type>mxml_error_cb_t</type> + <description>Error callback function</description> + </argument> + </function> + <function name="mxmlSetInteger"> + <returnvalue> + <type>int</type> + <description>0 on success, -1 on failure</description> + </returnvalue> + <description>Set the value of an integer node. + +The node is not changed if it (or its first child) is not an integer node.</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to set</description> + </argument> + <argument name="integer" direction="I"> + <type>int</type> + <description>Integer value</description> + </argument> + </function> + <function name="mxmlSetOpaque"> + <returnvalue> + <type>int</type> + <description>0 on success, -1 on failure</description> + </returnvalue> + <description>Set the value of an opaque node. + +The node is not changed if it (or its first child) is not an opaque node.</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to set</description> + </argument> + <argument name="opaque" direction="I"> + <type>const char *</type> + <description>Opaque string</description> + </argument> + </function> + <function name="mxmlSetReal"> + <returnvalue> + <type>int</type> + <description>0 on success, -1 on failure</description> + </returnvalue> + <description>Set the value of a real number node. + +The node is not changed if it (or its first child) is not a real number node.</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to set</description> + </argument> + <argument name="real" direction="I"> + <type>double</type> + <description>Real number value</description> + </argument> + </function> + <function name="mxmlSetText"> + <returnvalue> + <type>int</type> + <description>0 on success, -1 on failure</description> + </returnvalue> + <description>Set the value of a text node. + +The node is not changed if it (or its first child) is not a text node.</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to set</description> + </argument> + <argument name="whitespace" direction="I"> + <type>int</type> + <description>1 = leading whitespace, 0 = no whitespace</description> + </argument> + <argument name="string" direction="I"> + <type>const char *</type> + <description>String</description> + </argument> + </function> + <function name="mxmlSetTextf"> + <returnvalue> + <type>int</type> + <description>0 on success, -1 on failure</description> + </returnvalue> + <description>Set the value of a text node to a formatted string. + +The node is not changed if it (or its first child) is not a text node.</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to set</description> + </argument> + <argument name="whitespace" direction="I"> + <type>int</type> + <description>1 = leading whitespace, 0 = no whitespace</description> + </argument> + <argument name="format" direction="I"> + <type>const char *</type> + <description>Printf-style format string</description> + </argument> + <argument name="..." direction="I"> + <type /> <description>Additional arguments as needed</description> + </argument> + </function> + <function name="mxmlSetUserData"> + <returnvalue> + <type>int</type> + <description>0 on success, -1 on failure</description> + </returnvalue> + <description>Set the user data pointer for a node. + +@since Mini-XML 2.7@</description> + <argument name="node" direction="I"> + <type>mxml_node_t *</type> + <description>Node to set</description> + </argument> + <argument name="data" direction="I"> + <type>void *</type> + <description>User data pointer</description> + </argument> + </function> + <function name="mxmlSetWrapMargin"> + <description>Set the wrap margin when saving XML data. + +Wrapping is disabled when "column" is 0. + +@since Mini-XML 2.3@</description> + <argument name="column" direction="I"> + <type>int</type> + <description>Column for wrapping, 0 to disable wrapping</description> + </argument> + </function> + <function name="mxmlWalkNext"> + <returnvalue> + <type>mxml_node_t *</type> + <description>Next node or NULL</description> + </returnvalue> + <description>Walk to the next logical node in the tree. + +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="node" direction="I"> + <type>mxml_node_t *</type> + <description>Current node</description> + </argument> + <argument name="top" direction="I"> + <type>mxml_node_t *</type> + <description>Top node</description> + </argument> + <argument name="descend" direction="I"> + <type>int</type> + <description>Descend into tree - MXML_DESCEND, MXML_NO_DESCEND, or MXML_DESCEND_FIRST</description> + </argument> + </function> + <function name="mxmlWalkPrev"> + <returnvalue> + <type>mxml_node_t *</type> + <description>Previous node or NULL</description> + </returnvalue> + <description>Walk to the previous logical node in the tree. + +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="node" direction="I"> + <type>mxml_node_t *</type> + <description>Current node</description> + </argument> + <argument name="top" direction="I"> + <type>mxml_node_t *</type> + <description>Top node</description> + </argument> + <argument name="descend" direction="I"> + <type>int</type> + <description>Descend into tree - MXML_DESCEND, MXML_NO_DESCEND, or MXML_DESCEND_FIRST</description> + </argument> + </function> + <struct name="mxml_attr_s"> + <description>An XML element attribute value. @private@</description> + <variable name="name"> + <type>char *</type> + <description>Attribute name</description> + </variable> + <variable name="value"> + <type>char *</type> + <description>Attribute value</description> + </variable> + </struct> + <typedef name="mxml_attr_t"> + <type>struct mxml_attr_s</type> + <description>An XML element attribute value. @private@</description> + </typedef> + <typedef name="mxml_custom_destroy_cb_t"> + <type>void(*)(void *)</type> + <description>Custom data destructor</description> + </typedef> + <typedef name="mxml_custom_load_cb_t"> + <type>int(*)(mxml_node_t *, const char *)</type> + <description>Custom data load callback function</description> + </typedef> + <struct name="mxml_custom_s"> + <description>An XML custom value. @private@</description> + <variable name="data"> + <type>void *</type> + <description>Pointer to (allocated) custom data</description> + </variable> + <variable name="destroy"> + <type>mxml_custom_destroy_cb_t</type> + <description>Pointer to destructor function</description> + </variable> + </struct> + <typedef name="mxml_custom_save_cb_t"> + <type>char *(*)(mxml_node_t *)</type> + <description>Custom data save callback function</description> + </typedef> + <typedef name="mxml_custom_t"> + <type>struct mxml_custom_s</type> + <description>An XML custom value. @private@</description> + </typedef> + <struct name="mxml_element_s"> + <description>An XML element value. @private@</description> + <variable name="attrs"> + <type>mxml_attr_t *</type> + <description>Attributes</description> + </variable> + <variable name="name"> + <type>char *</type> + <description>Name of element</description> + </variable> + <variable name="num_attrs"> + <type>int</type> + <description>Number of attributes</description> + </variable> + </struct> + <typedef name="mxml_element_t"> + <type>struct mxml_element_s</type> + <description>An XML element value. @private@</description> + </typedef> + <typedef name="mxml_entity_cb_t"> + <type>int(*)(const char *)</type> + <description>Entity callback function</description> + </typedef> + <typedef name="mxml_error_cb_t"> + <type>void(*)(const char *)</type> + <description>Error callback function</description> + </typedef> + <struct name="mxml_index_s"> + <description>An XML node index. @private@</description> + <variable name="alloc_nodes"> + <type>int</type> + <description>Allocated nodes in index</description> + </variable> + <variable name="attr"> + <type>char *</type> + <description>Attribute used for indexing or NULL</description> + </variable> + <variable name="cur_node"> + <type>int</type> + <description>Current node</description> + </variable> + <variable name="nodes"> + <type>mxml_node_t **</type> + <description>Node array</description> + </variable> + <variable name="num_nodes"> + <type>int</type> + <description>Number of nodes in index</description> + </variable> + </struct> + <typedef name="mxml_index_t"> + <type>struct mxml_index_s</type> + <description>An XML node index.</description> + </typedef> + <typedef name="mxml_load_cb_t"> + <type>mxml_type_t(*)(mxml_node_t *)</type> + <description>Load callback function</description> + </typedef> + <struct name="mxml_node_s"> + <description>An XML node. @private@</description> + <variable name="child"> + <type>struct mxml_node_s *</type> + <description>First child node</description> + </variable> + <variable name="last_child"> + <type>struct mxml_node_s *</type> + <description>Last child node</description> + </variable> + <variable name="next"> + <type>struct mxml_node_s *</type> + <description>Next node under same parent</description> + </variable> + <variable name="parent"> + <type>struct mxml_node_s *</type> + <description>Parent node</description> + </variable> + <variable name="prev"> + <type>struct mxml_node_s *</type> + <description>Previous node under same parent</description> + </variable> + <variable name="ref_count"> + <type>int</type> + <description>Use count</description> + </variable> + <variable name="type"> + <type>mxml_type_t</type> + <description>Node type</description> + </variable> + <variable name="user_data"> + <type>void *</type> + <description>User data</description> + </variable> + <variable name="value"> + <type>mxml_value_t</type> + <description>Node value</description> + </variable> + </struct> + <typedef name="mxml_node_t"> + <type>struct mxml_node_s</type> + <description>An XML node.</description> + </typedef> + <typedef name="mxml_save_cb_t"> + <type>const char *(*)(mxml_node_t *, int)</type> + <description>Save callback function</description> + </typedef> + <typedef name="mxml_sax_cb_t"> + <type>void(*)(mxml_node_t *, mxml_sax_event_t, void *)</type> + <description>SAX callback function</description> + </typedef> + <enumeration name="mxml_sax_event_e"> + <description>SAX event type.</description> + <constant name="MXML_SAX_CDATA"> + <description>CDATA node</description> + </constant> + <constant name="MXML_SAX_COMMENT"> + <description>Comment node</description> + </constant> + <constant name="MXML_SAX_DATA"> + <description>Data node</description> + </constant> + <constant name="MXML_SAX_DIRECTIVE"> + <description>Processing directive node</description> + </constant> + <constant name="MXML_SAX_ELEMENT_CLOSE"> + <description>Element closed</description> + </constant> + <constant name="MXML_SAX_ELEMENT_OPEN"> + <description>Element opened</description> + </constant> + </enumeration> + <typedef name="mxml_sax_event_t"> + <type>enum mxml_sax_event_e</type> + <description>SAX event type.</description> + </typedef> + <struct name="mxml_text_s"> + <description>An XML text value. @private@</description> + <variable name="string"> + <type>char *</type> + <description>Fragment string</description> + </variable> + <variable name="whitespace"> + <type>int</type> + <description>Leading whitespace?</description> + </variable> + </struct> + <typedef name="mxml_text_t"> + <type>struct mxml_text_s</type> + <description>An XML text value. @private@</description> + </typedef> + <enumeration name="mxml_type_e"> + <description>The XML node type.</description> + <constant name="MXML_CUSTOM"> + <description>Custom data @since Mini-XML 2.1@</description> + </constant> + <constant name="MXML_ELEMENT"> + <description>XML element with attributes</description> + </constant> + <constant name="MXML_IGNORE"> + <description>Ignore/throw away node @since Mini-XML 2.3@</description> + </constant> + <constant name="MXML_INTEGER"> + <description>Integer value</description> + </constant> + <constant name="MXML_OPAQUE"> + <description>Opaque string</description> + </constant> + <constant name="MXML_REAL"> + <description>Real value</description> + </constant> + <constant name="MXML_TEXT"> + <description>Text fragment</description> + </constant> + </enumeration> + <typedef name="mxml_type_t"> + <description>The XML node type.</description> + <type>enum mxml_type_e</type> + </typedef> + <typedef name="mxml_value_t"> + <type>union mxml_value_u</type> + <description>An XML node value. @private@</description> + </typedef> + <union name="mxml_value_u"> + <description>An XML node value. @private@</description> + <variable name="custom"> + <type>mxml_custom_t</type> + <description>Custom data @since Mini-XML 2.1@</description> + </variable> + <variable name="element"> + <type>mxml_element_t</type> + <description>Element</description> + </variable> + <variable name="integer"> + <type>int</type> + <description>Integer number</description> + </variable> + <variable name="opaque"> + <type>char *</type> + <description>Opaque string</description> + </variable> + <variable name="real"> + <type>double</type> + <description>Real number</description> + </variable> + <variable name="text"> + <type>mxml_text_t</type> + <description>Text fragment</description> + </variable> + </union> +</mxmldoc> |