From 8bef33b1005ea97359a71786a84912c42edf97bb Mon Sep 17 00:00:00 2001 From: Vincent Sanders Date: Fri, 27 Jul 2012 10:41:43 +0100 Subject: Allow control over parser pause state --- bindings/hubbub/parser.c | 21 +++++++++++++++++++++ bindings/hubbub/parser.h | 10 ++++++++++ 2 files changed, 31 insertions(+) (limited to 'bindings') diff --git a/bindings/hubbub/parser.c b/bindings/hubbub/parser.c index 4a90511..6299da5 100644 --- a/bindings/hubbub/parser.c +++ b/bindings/hubbub/parser.c @@ -911,3 +911,24 @@ const char *dom_hubbub_parser_get_encoding(dom_hubbub_parser *parser, return parser->encoding != NULL ? parser->encoding : "Windows-1252"; } + +/** + * Set the Parse pause state. + * + * \param parser The parser object + * \param pause The pause state to set. + * \return DOM_HUBBUB_OK on success, + * DOM_HUBBUB_HUBBUB_ERR | on failure + */ +dom_hubbub_error dom_hubbub_parser_pause(dom_hubbub_parser *parser, bool pause) +{ + hubbub_error err; + hubbub_parser_optparams params; + + params.pause_parse = pause; + err = hubbub_parser_setopt(parser->parser, HUBBUB_PARSER_PAUSE, ¶ms); + if (err != HUBBUB_OK) + return DOM_HUBBUB_HUBBUB_ERR | err; + + return DOM_HUBBUB_OK; +} diff --git a/bindings/hubbub/parser.h b/bindings/hubbub/parser.h index 7af0dd0..16b02a8 100644 --- a/bindings/hubbub/parser.h +++ b/bindings/hubbub/parser.h @@ -77,4 +77,14 @@ dom_document *dom_hubbub_parser_get_document(dom_hubbub_parser *parser); const char *dom_hubbub_parser_get_encoding(dom_hubbub_parser *parser, dom_hubbub_encoding_source *source); +/** + * Set the Parse pause state. + * + * \param parser The parser object + * \param pause The pause state to set. + * \return DOM_HUBBUB_OK on success, + * DOM_HUBBUB_HUBBUB_ERR | on failure + */ +dom_hubbub_error dom_hubbub_parser_pause(dom_hubbub_parser *parser, bool pause); + #endif -- cgit v1.2.3