Hubbub $Id$
Todo List
Member element_stack_pop (hubbub_treebuilder *treebuilder, hubbub_ns *ns, element_type *type, void **node)

reduce allocated stack size once there's enough free

Can we optimise this? (i.e. by not traversing the entire list)

Member handle_after_after_body (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

parse error

Member handle_after_after_frameset (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

parse error

Member handle_after_body (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

parse error

fragment case

parse error

parse error

Member handle_after_frameset (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

parse error

parse error

parse error

fragment case

parse error

Member handle_after_head (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

parse error

parse error

parse error

Member handle_before_head (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

parse error

Member handle_before_html (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

cache selection algorithm

Member handle_generic_rcdata (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

if the current node's a script, mark it as already executed

parse error

Member handle_in_body (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

parse error

Member handle_in_caption (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

parse error if type == TABLE

parse error

fragment case

parse error

Member handle_in_cell (hubbub_treebuilder *treebuilder, const hubbub_token *token)

fragment case

parse error

parse error

parse error

parse error

Member handle_in_column_group (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

fragment case

fragment case

ack sc flag

parse error

Member handle_in_foreign_content (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

ack sc flag

Member handle_in_frameset (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

parse error

parse error

parse error

ack sc flag

parse error

parse error

Member handle_in_head (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

ack sc flag

need to ensure that the client callback sets the parser-inserted/already-executed script flags.

parse error

parse error

Member handle_in_head_noscript (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

parse error

parse error

parse error

parse error

parse error

Member handle_in_row (hubbub_treebuilder *treebuilder, const hubbub_token *token)
parse error
Member handle_in_select (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

parse error

parse error

parse error

parse error

parse error

Member handle_in_select_in_table (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

fragment case

Member handle_in_table (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

parse error

fragment case

parse error

parse error

Member handle_in_table_body (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

parse error

parse error

Member handle_initial (hubbub_treebuilder *treebuilder, const hubbub_token *token)

parse error

parse error

parse error

Member hubbub_charset_extract (const uint8_t *data, size_t len, uint16_t *mibenum, uint32_t *source)

Charset autodetection

We probably want to wait for ~512 bytes of data / 500ms here

Member LABEL
Enumerate phrasing elements
Member reset_insertion_mode (hubbub_treebuilder *treebuilder)
fragment parsing algorithm
Member START_BUF (str, cptr, length)

make some of these inline functions (type-safety)

document them properly here