diff options
Diffstat (limited to 'bindings/hubbub/parser.h')
-rw-r--r-- | bindings/hubbub/parser.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/bindings/hubbub/parser.h b/bindings/hubbub/parser.h new file mode 100644 index 0000000..65da1ea --- /dev/null +++ b/bindings/hubbub/parser.h @@ -0,0 +1,40 @@ +/* + * This file is part of libdom. + * Licensed under the MIT License, + * http://www.opensource.org/licenses/mit-license.php + * Copyright 2007 John-Mark Bell <jmb@netsurf-browser.org> + */ + +#ifndef dom_hubbub_parser_h_ +#define dom_hubbub_parser_h_ + +#include <stddef.h> +#include <inttypes.h> + +#include <dom/dom.h> + +#include "errors.h" + +struct dom_document; + +typedef struct dom_hubbub_parser dom_hubbub_parser; + +/* Create a Hubbub parser instance */ +dom_hubbub_parser *dom_hubbub_parser_create(const char *enc, + const char *int_enc, dom_alloc alloc, void *pw, + dom_msg msg, void *mctx); + +/* Destroy a Hubbub parser instance */ +void dom_hubbub_parser_destroy(dom_hubbub_parser *parser); + +/* Parse a chunk of data */ +dom_hubbub_error dom_hubbub_parser_parse_chunk(dom_hubbub_parser *parser, + uint8_t *data, size_t len); + +/* Notify parser that datastream is empty */ +dom_hubbub_error dom_hubbub_parser_completed(dom_hubbub_parser *parser); + +/* Retrieve the created DOM Document */ +struct dom_document *dom_hubbub_parser_get_document(dom_hubbub_parser *parser); + +#endif |