From 975de383a09510aae8d5a32f5fc97181fe2846a5 Mon Sep 17 00:00:00 2001 From: John Mark Bell Date: Sun, 4 Nov 2007 02:08:05 +0000 Subject: Beginnings of a hubbub binding to libdom Currently comprises a stubbed-out parser wrapper Todo: 1) Complete parser wrapper, such that it actually creates a DOM tree 2) Provide a hubbub-backed DOMImplementationSource svn path=/trunk/dom/; revision=3646 --- bindings/hubbub/parser.h | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 bindings/hubbub/parser.h (limited to 'bindings/hubbub/parser.h') 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 + */ + +#ifndef dom_hubbub_parser_h_ +#define dom_hubbub_parser_h_ + +#include +#include + +#include + +#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 -- cgit v1.2.3