14#define LXB_HTML_TAG_RES_DATA
15#define LXB_HTML_TAG_RES_SHS_DATA
19#define LXB_HTML_TKZ_TEMP_SIZE (4096 * 4)
150 tkz_to->
base = tkz_from;
154 tkz_to->
end = tkz_from->
end;
320 while (
data < new_data) {
328 if ((*
data & 0b11000000) == 0b10000000) {
void lexbor_array_obj_clean(lexbor_array_obj_t *array)
lexbor_array_obj_t * lexbor_array_obj_create(void)
lxb_status_t lexbor_array_obj_init(lexbor_array_obj_t *array, size_t size, size_t struct_size)
lexbor_array_obj_t * lexbor_array_obj_destroy(lexbor_array_obj_t *array, bool self_destroy)
@ LXB_STATUS_ERROR_MEMORY_ALLOCATION
@ LXB_STATUS_ERROR_OBJECT_IS_NULL
lxb_status_t lexbor_dobject_init(lexbor_dobject_t *dobject, size_t chunk_size, size_t struct_size)
void lexbor_dobject_clean(lexbor_dobject_t *dobject)
lexbor_dobject_t * lexbor_dobject_destroy(lexbor_dobject_t *dobject, bool destroy_self)
lexbor_dobject_t * lexbor_dobject_create(void)
struct lxb_dom_node lxb_dom_node_t
lxb_status_t lexbor_hash_init(lexbor_hash_t *hash, size_t table_size, size_t struct_size)
lexbor_hash_t * lexbor_hash_create(void)
lexbor_hash_t * lexbor_hash_destroy(lexbor_hash_t *hash, bool destroy_obj)
lxb_html_tokenizer_t * lxb_html_tokenizer_ref(lxb_html_tokenizer_t *tkz)
void lxb_html_tokenizer_callback_token_done_set_noi(lxb_html_tokenizer_t *tkz, lxb_html_tokenizer_token_f call_func, void *ctx)
lxb_status_t lxb_html_tokenizer_init(lxb_html_tokenizer_t *tkz)
void lxb_html_tokenizer_status_set_noi(lxb_html_tokenizer_t *tkz, lxb_status_t status)
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_attrs_make(lxb_html_tokenizer_t *tkz, size_t table_size)
lxb_status_t lxb_html_tokenizer_begin(lxb_html_tokenizer_t *tkz)
lxb_html_tokenizer_t * lxb_html_tokenizer_destroy(lxb_html_tokenizer_t *tkz)
lxb_status_t lxb_html_tokenizer_tags_make(lxb_html_tokenizer_t *tkz, size_t table_size)
lxb_status_t lxb_html_tokenizer_end(lxb_html_tokenizer_t *tkz)
lxb_html_tokenizer_t * lxb_html_tokenizer_unref(lxb_html_tokenizer_t *tkz)
lxb_status_t lxb_html_tokenizer_inherit(lxb_html_tokenizer_t *tkz_to, lxb_html_tokenizer_t *tkz_from)
void lxb_html_tokenizer_state_set_noi(lxb_html_tokenizer_t *tkz, lxb_html_tokenizer_state_f state)
lxb_html_tokenizer_t * lxb_html_tokenizer_create(void)
void lxb_html_tokenizer_tree_set_noi(lxb_html_tokenizer_t *tkz, lxb_html_tree_t *tree)
void lxb_html_tokenizer_attrs_destroy(lxb_html_tokenizer_t *tkz)
lxb_html_tree_t * lxb_html_tokenizer_tree_noi(lxb_html_tokenizer_t *tkz)
void lxb_html_tokenizer_set_state_by_tag(lxb_html_tokenizer_t *tkz, bool scripting, lxb_tag_id_t tag_id, lxb_ns_id_t ns)
lexbor_hash_t * lxb_html_tokenizer_tags_noi(lxb_html_tokenizer_t *tkz)
void lxb_html_tokenizer_clean(lxb_html_tokenizer_t *tkz)
void * lxb_html_tokenizer_callback_token_done_ctx_noi(lxb_html_tokenizer_t *tkz)
lxb_ns_id_t lxb_html_tokenizer_current_namespace(lxb_html_tokenizer_t *tkz)
void lxb_html_tokenizer_tmp_tag_id_set_noi(lxb_html_tokenizer_t *tkz, lxb_tag_id_t tag_id)
#define LXB_HTML_TKZ_TEMP_SIZE
lexbor_mraw_t * lxb_html_tokenizer_mraw_noi(lxb_html_tokenizer_t *tkz)
@ LXB_HTML_TOKENIZER_OPT_TAGS_SELF
@ LXB_HTML_TOKENIZER_OPT_ATTRS_MRAW_SELF
@ LXB_HTML_TOKENIZER_OPT_ATTRS_SELF
@ LXB_HTML_TOKENIZER_OPT_UNDEF
void lxb_html_tokenizer_tags_destroy(lxb_html_tokenizer_t *tkz)
const lxb_char_t * lxb_html_tokenizer_eof
struct lexbor_hash lexbor_hash_t
struct lxb_html_tokenizer lxb_html_tokenizer_t
struct lxb_html_tree lxb_html_tree_t
lxb_html_token_t * lxb_html_token_create(lexbor_dobject_t *dobj)
lxb_inline void lxb_html_token_clean(lxb_html_token_t *token)
const lxb_char_t * lxb_html_tokenizer_state_plaintext_before(lxb_html_tokenizer_t *tkz, const lxb_char_t *data, const lxb_char_t *end)
const lxb_char_t * lxb_html_tokenizer_state_data_before(lxb_html_tokenizer_t *tkz, const lxb_char_t *data, const lxb_char_t *end)
const lxb_char_t *(* lxb_html_tokenizer_state_f)(lxb_html_tokenizer_t *tkz, const lxb_char_t *data, const lxb_char_t *end)
lxb_inline void lxb_html_tokenizer_state_set(lxb_html_tokenizer_t *tkz, lxb_html_tokenizer_state_f state)
lxb_inline lexbor_hash_t * lxb_html_tokenizer_tags(lxb_html_tokenizer_t *tkz)
lxb_html_token_t *(* lxb_html_tokenizer_token_f)(lxb_html_tokenizer_t *tkz, lxb_html_token_t *token, void *ctx)
lxb_inline void lxb_html_tokenizer_tree_set(lxb_html_tokenizer_t *tkz, lxb_html_tree_t *tree)
lxb_inline void lxb_html_tokenizer_tmp_tag_id_set(lxb_html_tokenizer_t *tkz, lxb_tag_id_t tag_id)
lxb_inline void * lxb_html_tokenizer_callback_token_done_ctx(lxb_html_tokenizer_t *tkz)
lxb_inline lxb_html_tree_t * lxb_html_tokenizer_tree(lxb_html_tokenizer_t *tkz)
lxb_inline void lxb_html_tokenizer_callback_token_done_set(lxb_html_tokenizer_t *tkz, lxb_html_tokenizer_token_f call_func, void *ctx)
lxb_inline void lxb_html_tokenizer_status_set(lxb_html_tokenizer_t *tkz, lxb_status_t status)
lxb_inline lexbor_mraw_t * lxb_html_tokenizer_mraw(lxb_html_tokenizer_t *tkz)
LXB_API void * lexbor_free(void *dst)
LXB_API void * lexbor_malloc(size_t size)
LXB_API void * lexbor_calloc(size_t num, size_t size)
lexbor_mraw_t * lexbor_mraw_create(void)
void lexbor_mraw_clean(lexbor_mraw_t *mraw)
lxb_status_t lexbor_mraw_init(lexbor_mraw_t *mraw, size_t chunk_size)
lexbor_mraw_t * lexbor_mraw_destroy(lexbor_mraw_t *mraw, bool destroy_self)
unsigned const char * end
const lxb_char_t * lxb_html_tokenizer_state_rawtext_before(lxb_html_tokenizer_t *tkz, const lxb_char_t *data, const lxb_char_t *end)
const lxb_char_t * lxb_html_tokenizer_state_rcdata_before(lxb_html_tokenizer_t *tkz, const lxb_char_t *data, const lxb_char_t *end)
const lxb_char_t * lxb_html_tokenizer_state_script_data_before(lxb_html_tokenizer_t *tkz, const lxb_char_t *data, const lxb_char_t *end)
lxb_html_tokenizer_state_f state_return
lxb_html_tokenizer_t * base
lxb_html_tokenizer_opt_t opt
lxb_html_tokenizer_state_f state
void * callback_token_ctx
lexbor_array_obj_t * parse_errors
lexbor_mraw_t * attrs_mraw
lxb_html_tokenizer_token_f callback_token_done
lexbor_dobject_t * dobj_token_attr
lexbor_dobject_t * dobj_token
struct lxb_html_token_attr lxb_html_token_attr_t
lxb_inline lxb_dom_node_t * lxb_html_tree_adjusted_current_node(lxb_html_tree_t *tree)
unsigned int lxb_status_t