7#ifndef LEXBOR_HTML_TREE_H
8#define LEXBOR_HTML_TREE_H
struct lxb_dom_document_type lxb_dom_document_type_t
#define lxb_dom_interface_node(obj)
struct lxb_dom_comment lxb_dom_comment_t
struct lxb_dom_node lxb_dom_node_t
struct lxb_dom_attr lxb_dom_attr_t
struct lxb_dom_element lxb_dom_element_t
lxb_dom_interface_t * lxb_html_interface_create(lxb_html_document_t *document, lxb_tag_id_t tag_id, lxb_ns_id_t ns)
lxb_status_t lxb_html_tokenizer_chunk(lxb_html_tokenizer_t *tkz, const lxb_char_t *data, size_t size)
lxb_status_t lxb_html_tokenizer_begin(lxb_html_tokenizer_t *tkz)
lxb_status_t lxb_html_tokenizer_end(lxb_html_tokenizer_t *tkz)
struct lxb_html_tokenizer lxb_html_tokenizer_t
struct lxb_html_tree lxb_html_tree_t
struct lxb_html_element lxb_html_element_t
struct lxb_html_form_element lxb_html_form_element_t
struct lxb_html_document lxb_html_document_t
lxb_inline bool lxb_html_tag_is_void(lxb_tag_id_t tag_id)
int lxb_html_tag_category_t
@ LXB_HTML_TOKEN_TYPE_CLOSE_SELF
@ LXB_HTML_RULES_ERROR_NOVOHTELSTTAWITRSO
void lxb_dom_node_insert_before_wo_events(lxb_dom_node_t *to, lxb_dom_node_t *node)
void lxb_dom_node_insert_child_wo_events(lxb_dom_node_t *to, lxb_dom_node_t *node)
unsigned const char * pos
lxb_html_document_done_cb_f done
lxb_html_token_type_t type
lexbor_array_obj_t * text_list
bool has_explicit_html_tag
lxb_html_tree_append_attr_f before_append_attr
lxb_html_tree_pending_table_t pending_table
lxb_html_tree_insertion_mode_f original_mode
lexbor_array_obj_t * template_insertion_modes
bool has_explicit_head_tag
lxb_html_tokenizer_t * tkz_ref
lxb_html_form_element_t * form
lexbor_array_t * active_formatting
lexbor_array_obj_t * parse_errors
lxb_html_tree_insertion_mode_f mode
lexbor_array_t * open_elements
lxb_html_document_t * document
bool has_explicit_body_tag
lxb_dom_node_t * fragment
LXB_API bool lxb_html_tree_scripting_noi(lxb_html_tree_t *tree)
LXB_API lxb_status_t lxb_html_tree_begin_noi(lxb_html_tree_t *tree, lxb_html_document_t *document)
LXB_API void lxb_html_tree_parse_error(lxb_html_tree_t *tree, lxb_html_token_t *token, lxb_html_tree_error_id_t id)
LXB_API lxb_dom_node_t * lxb_html_tree_element_in_scope(lxb_html_tree_t *tree, lxb_tag_id_t tag_id, lxb_ns_id_t ns, lxb_html_tag_category_t ct)
lxb_html_tree_insertion_position_t
@ LXB_HTML_TREE_INSERTION_POSITION_BEFORE
@ LXB_HTML_TREE_INSERTION_POSITION_CHILD
LXB_API lxb_html_element_t * lxb_html_tree_generic_rawtext_parsing(lxb_html_tree_t *tree, lxb_html_token_t *token)
LXB_API lxb_status_t lxb_html_tree_append_attributes_from_element(lxb_html_tree_t *tree, lxb_dom_element_t *element, lxb_dom_element_t *from, lxb_ns_id_t ns)
LXB_API void lxb_html_tree_clean(lxb_html_tree_t *tree)
LXB_API lxb_dom_node_t * lxb_html_tree_appropriate_place_inserting_node(lxb_html_tree_t *tree, lxb_dom_node_t *override_target, lxb_html_tree_insertion_position_t *ipos)
LXB_API void lxb_html_tree_insert_node_noi(lxb_dom_node_t *to, lxb_dom_node_t *node, lxb_html_tree_insertion_position_t ipos)
LXB_API lxb_dom_node_t * lxb_html_tree_element_in_scope_tbody_thead_tfoot(lxb_html_tree_t *tree)
LXB_API bool lxb_html_tree_construction_dispatcher(lxb_html_tree_t *tree, lxb_html_token_t *token)
lxb_inline lxb_status_t lxb_html_tree_build(lxb_html_tree_t *tree, lxb_html_document_t *document, const lxb_char_t *html, size_t size)
LXB_API lxb_status_t lxb_html_tree_build_noi(lxb_html_tree_t *tree, lxb_html_document_t *document, const lxb_char_t *html, size_t size)
LXB_API lxb_html_element_t * lxb_html_tree_create_element_for_token(lxb_html_tree_t *tree, lxb_html_token_t *token, lxb_ns_id_t ns)
lxb_status_t(* lxb_html_tree_append_attr_f)(lxb_html_tree_t *tree, lxb_dom_attr_t *attr, void *ctx)
lxb_inline void lxb_html_tree_attach_document(lxb_html_tree_t *tree, lxb_html_document_t *doc)
LXB_API lxb_dom_node_t * lxb_html_tree_current_node_noi(lxb_html_tree_t *tree)
LXB_API void lxb_html_tree_close_p_element(lxb_html_tree_t *tree, lxb_html_token_t *token)
LXB_API bool lxb_html_tree_check_scope_element(lxb_html_tree_t *tree)
lxb_inline bool lxb_html_tree_mathml_text_integration_point(lxb_dom_node_t *node)
LXB_API void lxb_html_tree_scripting_set_noi(lxb_html_tree_t *tree, bool scripting)
LXB_API bool lxb_html_tree_mathml_text_integration_point_noi(lxb_dom_node_t *node)
lxb_inline bool lxb_html_tree_scripting(lxb_html_tree_t *tree)
lxb_inline void lxb_html_tree_insert_node(lxb_dom_node_t *to, lxb_dom_node_t *node, lxb_html_tree_insertion_position_t ipos)
LXB_API lxb_status_t lxb_html_tree_end_noi(lxb_html_tree_t *tree)
LXB_API lxb_dom_node_t * lxb_html_tree_create_node_noi(lxb_html_tree_t *tree, lxb_tag_id_t tag_id, lxb_ns_id_t ns)
LXB_API lxb_html_element_t * lxb_html_tree_generic_rcdata_parsing(lxb_html_tree_t *tree, lxb_html_token_t *token)
bool(* lxb_html_tree_insertion_mode_f)(lxb_html_tree_t *tree, lxb_html_token_t *token)
LXB_API lxb_html_tree_t * lxb_html_tree_ref(lxb_html_tree_t *tree)
LXB_API lxb_status_t lxb_html_tree_stop_parsing(lxb_html_tree_t *tree)
lxb_inline lxb_status_t lxb_html_tree_begin(lxb_html_tree_t *tree, lxb_html_document_t *document)
LXB_API void lxb_html_tree_generate_implied_end_tags(lxb_html_tree_t *tree, lxb_tag_id_t ex_tag, lxb_ns_id_t ex_ns)
LXB_API lxb_status_t lxb_html_tree_init(lxb_html_tree_t *tree, lxb_html_tokenizer_t *tkz)
lxb_inline lxb_dom_node_t * lxb_html_tree_current_node(lxb_html_tree_t *tree)
LXB_API lxb_dom_document_type_t * lxb_html_tree_create_document_type_from_token(lxb_html_tree_t *tree, lxb_html_token_t *token)
LXB_API bool lxb_html_tree_process_abort(lxb_html_tree_t *tree)
lxb_inline void lxb_html_tree_acknowledge_token_self_closing(lxb_html_tree_t *tree, lxb_html_token_t *token)
lxb_inline lxb_dom_node_t * lxb_html_tree_adjusted_current_node(lxb_html_tree_t *tree)
LXB_API void lxb_html_tree_attach_document_noi(lxb_html_tree_t *tree, lxb_html_document_t *doc)
lxb_inline void lxb_html_tree_scripting_set(lxb_html_tree_t *tree, bool scripting)
LXB_API lxb_html_element_t * lxb_html_tree_insert_foreign_element(lxb_html_tree_t *tree, lxb_html_token_t *token, lxb_ns_id_t ns)
LXB_API void lxb_html_tree_generate_all_implied_end_tags_thoroughly(lxb_html_tree_t *tree, lxb_tag_id_t ex_tag, lxb_ns_id_t ex_ns)
LXB_API lxb_status_t lxb_html_tree_insert_character_for_data(lxb_html_tree_t *tree, lexbor_str_t *str, lxb_dom_node_t **ret_node)
LXB_API lxb_dom_comment_t * lxb_html_tree_insert_comment(lxb_html_tree_t *tree, lxb_html_token_t *token, lxb_dom_node_t *pos)
LXB_API lxb_dom_node_t * lxb_html_tree_element_in_scope_td_th(lxb_html_tree_t *tree)
LXB_API lxb_status_t lxb_html_tree_adjust_mathml_attributes(lxb_html_tree_t *tree, lxb_dom_attr_t *attr, void *ctx)
lxb_inline lxb_dom_node_t * lxb_html_tree_create_node(lxb_html_tree_t *tree, lxb_tag_id_t tag_id, lxb_ns_id_t ns)
LXB_API lxb_status_t lxb_html_tree_adjust_attributes_mathml(lxb_html_tree_t *tree, lxb_dom_attr_t *attr, void *ctx)
lxb_inline bool lxb_html_tree_node_is(lxb_dom_node_t *node, lxb_tag_id_t tag_id)
LXB_API void lxb_html_tree_acknowledge_token_self_closing_noi(lxb_html_tree_t *tree, lxb_html_token_t *token)
LXB_API bool lxb_html_tree_html_integration_point(lxb_dom_node_t *node)
LXB_API lxb_html_tree_t * lxb_html_tree_create(void)
LXB_API bool lxb_html_tree_adoption_agency_algorithm(lxb_html_tree_t *tree, lxb_html_token_t *token, lxb_status_t *status)
LXB_API lxb_status_t lxb_html_tree_insert_character(lxb_html_tree_t *tree, lxb_html_token_t *token, lxb_dom_node_t **ret_node)
LXB_API lxb_dom_node_t * lxb_html_tree_adjusted_current_node_noi(lxb_html_tree_t *tree)
LXB_API lxb_html_tree_t * lxb_html_tree_unref(lxb_html_tree_t *tree)
LXB_API void lxb_html_tree_reset_insertion_mode_appropriately(lxb_html_tree_t *tree)
LXB_API lxb_html_tree_t * lxb_html_tree_destroy(lxb_html_tree_t *tree)
LXB_API bool lxb_html_tree_node_is_noi(lxb_dom_node_t *node, lxb_tag_id_t tag_id)
LXB_API void lxb_html_tree_node_delete_deep(lxb_html_tree_t *tree, lxb_dom_node_t *node)
LXB_API lxb_dom_node_t * lxb_html_tree_element_in_scope_h123456(lxb_html_tree_t *tree)
lxb_inline lxb_html_element_t * lxb_html_tree_insert_html_element(lxb_html_tree_t *tree, lxb_html_token_t *token)
LXB_API lxb_status_t lxb_html_tree_chunk_noi(lxb_html_tree_t *tree, const lxb_char_t *html, size_t size)
LXB_API lxb_dom_node_t * lxb_html_tree_element_in_scope_by_node(lxb_html_tree_t *tree, lxb_dom_node_t *by_node, lxb_html_tag_category_t ct)
LXB_API lxb_status_t lxb_html_tree_append_attributes(lxb_html_tree_t *tree, lxb_dom_element_t *element, lxb_html_token_t *token, lxb_ns_id_t ns)
LXB_API lxb_status_t lxb_html_tree_adjust_attributes_svg(lxb_html_tree_t *tree, lxb_dom_attr_t *attr, void *ctx)
LXB_API lxb_status_t lxb_html_tree_adjust_svg_attributes(lxb_html_tree_t *tree, lxb_dom_attr_t *attr, void *ctx)
LXB_API lxb_html_element_t * lxb_html_tree_insert_html_element_noi(lxb_html_tree_t *tree, lxb_html_token_t *token)
lxb_inline lxb_status_t lxb_html_tree_chunk(lxb_html_tree_t *tree, const lxb_char_t *html, size_t size)
lxb_inline lxb_status_t lxb_html_tree_end(lxb_html_tree_t *tree)
LXB_API lxb_status_t lxb_html_tree_adjust_foreign_attributes(lxb_html_tree_t *tree, lxb_dom_attr_t *attr, void *ctx)
unsigned int lxb_status_t