127 if (
data[1] !=
'-' ||
data[2] !=
'-') {
135 if (
data[-3] ==
'-' &&
data[-2] ==
'-') {
153 if ((
unsigned) (*
data - 0x41) <= (0x5A - 0x41)
154 || (
unsigned) (*
data - 0x61) <= (0x7A - 0x61))
156 goto skip_attributes;
164 if ((
unsigned) (*
data - 0x41) > (0x5A - 0x41)
165 && (
unsigned) (*
data - 0x61) > (0x7A - 0x61))
175 goto skip_attributes;
181 case 0x09:
case 0x0A:
case 0x0C:
182 case 0x0D:
case 0x20:
case 0x2F:
186 goto skip_attributes;
229 bool got_pragma, have_content;
236 have_content =
false;
276 attr->end = name_end;
283 if (
len == (
sizeof(
"http-equiv") - 1)) {
288 if ((value_end -
value) == (
sizeof(
"content-type") - 1)
290 value, (
sizeof(
"content-type") - 1)))
299 if (have_content ==
false) {
312 attr->end = name_end;
328 attr->end = value_end;
334 if (need_pragma == 0x00 || (need_pragma == 0x02 && got_pragma ==
false)) {
378 if (*
data ==
'\'' || *
data ==
'"') {
383 if (*
data == **name_end) {
400 case 0x09:
case 0x0A:
401 case 0x0C:
case 0x0D:
434 case 0x09:
case 0x0A:
435 case 0x0C:
case 0x0D:
436 case 0x20:
case 0x2F:
458 case 0x09:
case 0x0A:
459 case 0x0C:
case 0x0D:
534 case 0x09:
case 0x0A:
535 case 0x0C:
case 0x0D:
536 case 0x20:
case 0x3E:
void * lexbor_array_obj_pop(lexbor_array_obj_t *array)
void * lexbor_array_obj_push(lexbor_array_obj_t *array)
void lexbor_array_obj_clean(lexbor_array_obj_t *array)
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_inline size_t lexbor_array_obj_length(lexbor_array_obj_t *array)
lxb_inline void * lexbor_array_obj_get(const lexbor_array_obj_t *array, size_t idx)
@ LXB_STATUS_ERROR_MEMORY_ALLOCATION
@ LXB_STATUS_ERROR_WRONG_ARGS
lxb_inline const lxb_char_t * lxb_html_encoding_tag_end(const lxb_char_t *data, const lxb_char_t *end)
lxb_html_encoding_entry_t * lxb_html_encoding_meta_entry_noi(lxb_html_encoding_t *em, size_t idx)
lxb_inline const lxb_char_t * lxb_html_encoding_skip_spaces(const lxb_char_t *data, const lxb_char_t *end)
lxb_html_encoding_t * lxb_html_encoding_create_noi(void)
lxb_status_t lxb_html_encoding_init(lxb_html_encoding_t *em)
lexbor_array_obj_t * lxb_html_encoding_meta_result_noi(lxb_html_encoding_t *em)
const lxb_char_t * lxb_html_encoding_content(const lxb_char_t *data, const lxb_char_t *end, const lxb_char_t **name_end)
lxb_html_encoding_t * lxb_html_encoding_destroy(lxb_html_encoding_t *em, bool self_destroy)
lxb_inline const lxb_char_t * lxb_html_encoding_skip_name(const lxb_char_t *data, const lxb_char_t *end)
lxb_status_t lxb_html_encoding_determine(lxb_html_encoding_t *em, const lxb_char_t *data, const lxb_char_t *end)
size_t lxb_html_encoding_meta_length_noi(lxb_html_encoding_t *em)
void lxb_html_encoding_clean_noi(lxb_html_encoding_t *em)
lxb_inline size_t lxb_html_encoding_meta_length(lxb_html_encoding_t *em)
lxb_inline void lxb_html_encoding_clean(lxb_html_encoding_t *em)
lxb_inline lxb_html_encoding_t * lxb_html_encoding_create(void)
lxb_inline lexbor_array_obj_t * lxb_html_encoding_meta_result(lxb_html_encoding_t *em)
lxb_inline lxb_html_encoding_entry_t * lxb_html_encoding_meta_entry(lxb_html_encoding_t *em, size_t idx)
LXB_API void * lexbor_free(void *dst)
unsigned const char * end
bool lexbor_str_data_ncasecmp(const lxb_char_t *first, const lxb_char_t *sec, size_t size)
lexbor_array_obj_t result
unsigned int lxb_status_t