43#define ROXML_INVALID_NODE 0x000
51#define ROXML_ATTR_NODE 0x008
62#define ROXML_STD_NODE 0x010
70#define ROXML_ELM_NODE 0x010
78#define ROXML_TXT_NODE 0x020
86#define ROXML_CMT_NODE 0x040
94#define ROXML_PI_NODE 0x080
102#define ROXML_NS_NODE 0x100
110#define ROXML_NSDEF_NODE (ROXML_NS_NODE | ROXML_ATTR_NODE)
118#define ROXML_CDATA_MOD 0x200
126#define ROXML_CDATA_NODE (ROXML_TXT_NODE | ROXML_CDATA_MOD)
134#define ROXML_DOCTYPE_NODE 0x400
142#define ROXML_ALL_NODES (ROXML_PI_NODE | ROXML_CMT_NODE | ROXML_TXT_NODE | ROXML_ATTR_NODE | ROXML_ELM_NODE)
150#define ROXML_ALL_NODE ROXML_ALL_NODES
158#define ROXML_NODE_TYPES 0x05f8
166#define ROXML_ESCAPED_MOD 0x800
174#define ROXML_NON_ESCAPABLE_NODES (ROXML_CMT_NODE | ROXML_PI_NODE | ROXML_NS_NODE | ROXML_CDATA_MOD | ROXML_DOCTYPE_NODE)
198#define RELEASE_ALL (void*)-1
228#define RELEASE_LAST (void*)-2
235#define ROXML_INVALID_DOC (node_t*)0
ROXML_API node_t * roxml_get_prev_sibling(node_t *n)
prev sibling getter function
ROXML_API node_t * roxml_load_doc(char *filename)
load function for files
ROXML_API void roxml_del_node(node_t *n)
node deletion function
ROXML_API node_t * roxml_load_fd(int fd)
load function for file descriptors
ROXML_API node_t * roxml_set_ns(node_t *n, node_t *ns)
namespace setter function
ROXML_API node_t ** roxml_xpath(node_t *n, char *path, int *nb_ans)
exec path function
ROXML_API node_t * roxml_get_nodes(node_t *n, int type, char *name, int nth)
nodes getter function
ROXML_API node_t * roxml_get_root(node_t *n)
root getter function
ROXML_API int roxml_get_txt_nb(node_t *n)
text node number getter function
ROXML_API int roxml_commit_fd(node_t *n, int fd, int human)
sync to file descriptor function
ROXML_API node_t * roxml_get_cmt(node_t *n, int nth)
comment getter function
ROXML_API void roxml_close(node_t *n)
unload function
ROXML_API node_t * roxml_load_buf(char *buffer)
load function for buffers
ROXML_API int roxml_commit_file(node_t *n, char *dest, int human)
sync to named file function
ROXML_API node_t * roxml_get_next_sibling(node_t *n)
next sibling getter function
ROXML_API node_t * roxml_get_attr(node_t *n, char *name, int nth)
attribute getter function
ROXML_API int roxml_commit_buffer(node_t *n, char **buffer, int human)
sync to a memory buffer function
ROXML_API node_t * roxml_get_txt(node_t *n, int nth)
text node getter function
ROXML_API int roxml_get_pi_nb(node_t *n)
process-instruction number getter function
ROXML_API node_t * roxml_get_pi(node_t *n, int nth)
process-instruction getter function
ROXML_API int roxml_get_chld_nb(node_t *n)
chlds number getter function
ROXML_API char * roxml_get_name(node_t *n, char *buffer, int size)
name getter function
ROXML_API void roxml_release(void *data)
memory cleanning function
ROXML_API int roxml_get_attr_nb(node_t *n)
number of attribute getter function
ROXML_API int roxml_get_type(node_t *n)
node type function
ROXML_API int roxml_get_node_position(node_t *n)
node get position function
ROXML_API int roxml_commit_changes(node_t *n, char *dest, char **buffer, int human)
sync function
ROXML_API int roxml_get_nodes_nb(node_t *n, int type)
number of nodes getter function
ROXML_API int roxml_get_cmt_nb(node_t *n)
comments number getter function
ROXML_API node_t * roxml_get_parent(node_t *n)
parent getter function
ROXML_API node_t * roxml_get_ns(node_t *n)
namespace getter function
ROXML_API node_t * roxml_add_node(node_t *parent, int position, int type, char *name, char *value)
add a node to the tree
ROXML_API int roxml_escape(const char *buf, int decode, char *out)
XML encoding/decoding function.
ROXML_API node_t * roxml_get_chld(node_t *n, char *name, int nth)
chld getter function
ROXML_API char * roxml_get_content(node_t *n, char *buffer, int bufsize, int *size)
content getter function