libxml-rs 0.1.0-alpha.8

Phase 7: C14N, XML Reader/Writer, Regex, Automata, Debug. Native-Rust forensic reimplementation of libxml2+libxslt with C ABI drop-in replacement. 957 tests passing, C14N (inclusive+exclusive), XML Reader (full tree+stream+attribute traversal), XML Writer (document+element+attribute+PI+comment), Regex (44 tests: NFA, anchors, char classes, quantifiers, determinism, incremental execution), Automata (state machine infrastructure), Debug (tree dump, ls, attr dump), all prior surfaces.
Documentation
/**
 * @file
 *
 * I/O API for libxml-rs
 */

#ifndef __XML_IO_H__
#define __XML_IO_H__

#include <stdio.h>
#include <libxml/xmlversion.h>
#include <libxml/tree.h>

#ifdef __cplusplus
extern "C" {
#endif

/* I/O callback types */
typedef int (*xmlInputReadCallback)(void *context, char *buffer, int len);
typedef int (*xmlInputCloseCallback)(void *context);
typedef int (*xmlOutputWriteCallback)(void *context, const char *buffer, int len);
typedef int (*xmlOutputCloseCallback)(void *context);
typedef void *(*xmlResourceLoader)(const char *URL, const char *encoding,
                                    int options, void *ctxt);

#ifdef __cplusplus
}
#endif

#endif /* __XML_IO_H__ */