Hubbub
Data Fields
hubbub_tokeniser_context Struct Reference

Context for tokeniser. More...

Data Fields

size_t pending
 Count of pending chars. More...
 
hubbub_string current_comment
 Current comment text. More...
 
hubbub_token_type current_tag_type
 Type of current_tag. More...
 
hubbub_tag current_tag
 Current tag. More...
 
hubbub_doctype current_doctype
 Current doctype. More...
 
hubbub_tokeniser_state prev_state
 Previous state. More...
 
uint8_t last_start_tag_name [10]
 Name of the last start tag emitted. More...
 
size_t last_start_tag_len
 Length of last start tag. More...
 
struct {
   uint32_t   count
 
   bool   match
 
close_tag_match
 State for matching close tags. More...
 
struct {
   uint32_t   count
 Index into "DOCTYPE". More...
 
match_doctype
 State for matching doctype. More...
 
struct {
   uint32_t   count
 Index into "[CDATA[". More...
 
   uint32_t   end
 Index into "]]>". More...
 
match_cdata
 State for matching cdata. More...
 
struct {
   size_t   offset
 Offset in buffer. More...
 
   uint32_t   length
 Length of entity. More...
 
   uint32_t   codepoint
 UCS4 codepoint. More...
 
   bool   complete
 True if match complete. More...
 
   uint32_t   poss_length
 Optimistic length when matching named character references. More...
 
   uint8_t   base
 Base for numeric entities. More...
 
   int32_t   context
 Context for named entity search. More...
 
   size_t   prev_len
 Previous byte length of str. More...
 
   bool   had_data
 Whether we read anything after &#(x)? More...
 
   bool   overflow
 Whether this entity has has overflowed the maximum numeric entity value. More...
 
   hubbub_tokeniser_state   return_state
 State we were called from. More...
 
match_entity
 Entity matching state. More...
 
struct {
   uint32_t   line
 Current line of input. More...
 
   uint32_t   col
 Current character in line. More...
 
position
 Position in source data. More...
 
uint32_t allowed_char
 Used for quote matching. More...
 

Detailed Description

Context for tokeniser.

Definition at line 99 of file tokeniser.c.

Field Documentation

◆ allowed_char

uint32_t hubbub_tokeniser_context::allowed_char

◆ base

uint8_t hubbub_tokeniser_context::base

Base for numeric entities.

Definition at line 137 of file tokeniser.c.

Referenced by hubbub_tokeniser_consume_character_reference(), and hubbub_tokeniser_handle_numbered_entity().

◆ close_tag_match

struct { ... } hubbub_tokeniser_context::close_tag_match

State for matching close tags.

Referenced by hubbub_tokeniser_handle_close_tag_open(), and hubbub_tokeniser_handle_tag_open().

◆ codepoint

uint32_t hubbub_tokeniser_context::codepoint

◆ col

uint32_t hubbub_tokeniser_context::col

Current character in line.

Definition at line 154 of file tokeniser.c.

◆ complete

bool hubbub_tokeniser_context::complete

◆ context

int32_t hubbub_tokeniser_context::context

Context for named entity search.

Definition at line 139 of file tokeniser.c.

Referenced by hubbub_tokeniser_consume_character_reference(), and hubbub_tokeniser_handle_named_entity().

◆ count

uint32_t hubbub_tokeniser_context::count

◆ current_comment

hubbub_string hubbub_tokeniser_context::current_comment

◆ current_doctype

hubbub_doctype hubbub_tokeniser_context::current_doctype

◆ current_tag

hubbub_tag hubbub_tokeniser_context::current_tag

◆ current_tag_type

hubbub_token_type hubbub_tokeniser_context::current_tag_type

Type of current_tag.

Definition at line 104 of file tokeniser.c.

Referenced by emit_current_tag(), hubbub_tokeniser_handle_close_tag_open(), and hubbub_tokeniser_handle_tag_open().

◆ end

uint32_t hubbub_tokeniser_context::end

Index into "]]>".

Definition at line 125 of file tokeniser.c.

Referenced by hubbub_tokeniser_handle_cdata_block(), and hubbub_tokeniser_handle_match_cdata().

◆ had_data

bool hubbub_tokeniser_context::had_data

Whether we read anything after &#(x)?

Definition at line 143 of file tokeniser.c.

Referenced by hubbub_tokeniser_consume_character_reference(), and hubbub_tokeniser_handle_numbered_entity().

◆ last_start_tag_len

size_t hubbub_tokeniser_context::last_start_tag_len

Length of last start tag.

Definition at line 111 of file tokeniser.c.

Referenced by emit_current_tag(), and hubbub_tokeniser_handle_close_tag_open().

◆ last_start_tag_name

uint8_t hubbub_tokeniser_context::last_start_tag_name[10]

Name of the last start tag emitted.

Definition at line 109 of file tokeniser.c.

Referenced by emit_current_tag(), and hubbub_tokeniser_handle_close_tag_open().

◆ length

uint32_t hubbub_tokeniser_context::length

◆ line

uint32_t hubbub_tokeniser_context::line

Current line of input.

Definition at line 153 of file tokeniser.c.

◆ match

bool hubbub_tokeniser_context::match

◆ match_cdata

struct { ... } hubbub_tokeniser_context::match_cdata

◆ match_doctype

struct { ... } hubbub_tokeniser_context::match_doctype

◆ match_entity

struct { ... } hubbub_tokeniser_context::match_entity

◆ offset

size_t hubbub_tokeniser_context::offset

◆ overflow

bool hubbub_tokeniser_context::overflow

Whether this entity has has overflowed the maximum numeric entity value.

Definition at line 145 of file tokeniser.c.

Referenced by hubbub_tokeniser_consume_character_reference(), and hubbub_tokeniser_handle_numbered_entity().

◆ pending

size_t hubbub_tokeniser_context::pending

Count of pending chars.

Definition at line 100 of file tokeniser.c.

Referenced by emit_current_chars(), hubbub_tokeniser_emit_token(), hubbub_tokeniser_handle_after_attribute_name(), hubbub_tokeniser_handle_after_attribute_value_q(), hubbub_tokeniser_handle_after_doctype_name(), hubbub_tokeniser_handle_after_doctype_public(), hubbub_tokeniser_handle_after_doctype_system(), hubbub_tokeniser_handle_attribute_name(), hubbub_tokeniser_handle_attribute_value_dq(), hubbub_tokeniser_handle_attribute_value_sq(), hubbub_tokeniser_handle_attribute_value_uq(), hubbub_tokeniser_handle_before_attribute_name(), hubbub_tokeniser_handle_before_attribute_value(), hubbub_tokeniser_handle_before_doctype_name(), hubbub_tokeniser_handle_before_doctype_public(), hubbub_tokeniser_handle_before_doctype_system(), hubbub_tokeniser_handle_bogus_comment(), hubbub_tokeniser_handle_bogus_doctype(), hubbub_tokeniser_handle_cdata_block(), hubbub_tokeniser_handle_character_reference_data(), hubbub_tokeniser_handle_character_reference_in_attribute_value(), hubbub_tokeniser_handle_close_tag_open(), hubbub_tokeniser_handle_comment(), hubbub_tokeniser_handle_data(), hubbub_tokeniser_handle_doctype(), hubbub_tokeniser_handle_doctype_name(), hubbub_tokeniser_handle_doctype_public_dq(), hubbub_tokeniser_handle_doctype_public_sq(), hubbub_tokeniser_handle_doctype_system_dq(), hubbub_tokeniser_handle_doctype_system_sq(), hubbub_tokeniser_handle_markup_declaration_open(), hubbub_tokeniser_handle_match_cdata(), hubbub_tokeniser_handle_match_comment(), hubbub_tokeniser_handle_match_doctype(), hubbub_tokeniser_handle_match_public(), hubbub_tokeniser_handle_match_system(), hubbub_tokeniser_handle_self_closing_start_tag(), hubbub_tokeniser_handle_tag_name(), and hubbub_tokeniser_handle_tag_open().

◆ position

struct { ... } hubbub_tokeniser_context::position

Position in source data.

◆ poss_length

uint32_t hubbub_tokeniser_context::poss_length

Optimistic length when matching named character references.

Definition at line 134 of file tokeniser.c.

Referenced by hubbub_tokeniser_consume_character_reference(), and hubbub_tokeniser_handle_named_entity().

◆ prev_len

size_t hubbub_tokeniser_context::prev_len

Previous byte length of str.

Definition at line 141 of file tokeniser.c.

Referenced by hubbub_tokeniser_consume_character_reference().

◆ prev_state

hubbub_tokeniser_state hubbub_tokeniser_context::prev_state

◆ return_state

hubbub_tokeniser_state hubbub_tokeniser_context::return_state

The documentation for this struct was generated from the following file: