diff options
Diffstat (limited to 'bindings/hubbub')
-rw-r--r-- | bindings/hubbub/parser.c | 21 | ||||
-rw-r--r-- | bindings/hubbub/parser.h | 10 |
2 files changed, 31 insertions, 0 deletions
diff --git a/bindings/hubbub/parser.c b/bindings/hubbub/parser.c index cc98335..9bbf131 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 | <hubbub_error> 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 | <hubbub_error> on failure + */ +dom_hubbub_error dom_hubbub_parser_pause(dom_hubbub_parser *parser, bool pause); + #endif |