libdom
Loading...
Searching...
No Matches
parser.h File Reference
#include <stddef.h>
#include <inttypes.h>
#include <hubbub/errors.h>
#include <dom/dom.h>

Go to the source code of this file.

Classes

struct  dom_hubbub_parser_params
 

Typedefs

typedef dom_hubbub_error(* dom_script) (void *ctx, struct dom_node *node)
 
typedef struct dom_hubbub_parser dom_hubbub_parser
 
typedef enum dom_hubbub_encoding_source dom_hubbub_encoding_source
 
typedef struct dom_hubbub_parser_params dom_hubbub_parser_params
 

Enumerations

enum  dom_hubbub_encoding_source { DOM_HUBBUB_ENCODING_SOURCE_HEADER , DOM_HUBBUB_ENCODING_SOURCE_DETECTED , DOM_HUBBUB_ENCODING_SOURCE_META }
 

Functions

dom_hubbub_error dom_hubbub_parser_create (dom_hubbub_parser_params *params, dom_hubbub_parser **parser, dom_document **document)
 
dom_hubbub_error dom_hubbub_fragment_parser_create (dom_hubbub_parser_params *params, dom_document *document, dom_hubbub_parser **parser, dom_document_fragment **fragment)
 
void dom_hubbub_parser_destroy (dom_hubbub_parser *parser)
 
dom_hubbub_error dom_hubbub_parser_parse_chunk (dom_hubbub_parser *parser, const uint8_t *data, size_t len)
 
dom_hubbub_error dom_hubbub_parser_insert_chunk (dom_hubbub_parser *parser, const uint8_t *data, size_t length)
 
dom_hubbub_error dom_hubbub_parser_completed (dom_hubbub_parser *parser)
 
const char * dom_hubbub_parser_get_encoding (dom_hubbub_parser *parser, dom_hubbub_encoding_source *source)
 
dom_hubbub_error dom_hubbub_parser_pause (dom_hubbub_parser *parser, bool pause)
 

Typedef Documentation

◆ dom_hubbub_encoding_source

◆ dom_hubbub_parser

typedef struct dom_hubbub_parser dom_hubbub_parser

◆ dom_hubbub_parser_params

typedef struct dom_hubbub_parser_params dom_hubbub_parser_params

Parameter block for dom_hubbub_parser_create

◆ dom_script

typedef dom_hubbub_error(* dom_script) (void *ctx, struct dom_node *node)

Type of script completion function

Enumeration Type Documentation

◆ dom_hubbub_encoding_source

Enumerator
DOM_HUBBUB_ENCODING_SOURCE_HEADER 
DOM_HUBBUB_ENCODING_SOURCE_DETECTED 
DOM_HUBBUB_ENCODING_SOURCE_META 

Function Documentation

◆ dom_hubbub_fragment_parser_create()

dom_hubbub_error dom_hubbub_fragment_parser_create ( dom_hubbub_parser_params * params,
dom_document * document,
dom_hubbub_parser ** parser,
dom_document_fragment ** fragment )

Create a Hubbub parser instance

Parameters
paramsThe binding creation parameters
parserPointer to location to recive instance.
documentPointer to location to receive document.
Returns
Error code

◆ dom_hubbub_parser_completed()

dom_hubbub_error dom_hubbub_parser_completed ( dom_hubbub_parser * parser)

Notify the parser to complete parsing

Parameters
parserThe parser object
Returns
DOM_HUBBUB_OK on success, DOM_HUBBUB_HUBBUB_ERR | <hubbub_error> on underlaying parser failure DOMHUBBUB_UNKNOWN | <lwc_error> on libwapcaplet failure

◆ dom_hubbub_parser_create()

dom_hubbub_error dom_hubbub_parser_create ( dom_hubbub_parser_params * params,
dom_hubbub_parser ** parser,
dom_document ** document )

Create a Hubbub parser instance

Parameters
paramsThe binding creation parameters
parserPointer to location to recive instance.
documentPointer to location to receive document.
Returns
Error code

◆ dom_hubbub_parser_destroy()

void dom_hubbub_parser_destroy ( dom_hubbub_parser * parser)

Destroy a Hubbub parser instance

Parameters
parserThe Hubbub parser object

◆ dom_hubbub_parser_get_encoding()

const char * dom_hubbub_parser_get_encoding ( dom_hubbub_parser * parser,
dom_hubbub_encoding_source * source )

Retrieve the encoding

Parameters
parserThe parser object
sourceThe encoding_source
Returns
the encoding name

◆ dom_hubbub_parser_insert_chunk()

dom_hubbub_error dom_hubbub_parser_insert_chunk ( dom_hubbub_parser * parser,
const uint8_t * data,
size_t length )

◆ dom_hubbub_parser_parse_chunk()

dom_hubbub_error dom_hubbub_parser_parse_chunk ( dom_hubbub_parser * parser,
const uint8_t * data,
size_t len )

Parse data with Hubbub parser

Parameters
parserThe parser object
dataThe data to be parsed
lenThe length of the data to be parsed
Returns
DOM_HUBBUB_OK on success, DOM_HUBBUB_HUBBUB_ERR | <hubbub_error> on failure

◆ dom_hubbub_parser_pause()

dom_hubbub_error dom_hubbub_parser_pause ( dom_hubbub_parser * parser,
bool pause )

Set the Parse pause state.

Parameters
parserThe parser object
pauseThe pause state to set.
Returns
DOM_HUBBUB_OK on success, DOM_HUBBUB_HUBBUB_ERR | <hubbub_error> on failure