stdex
Additional custom or not Standard C++ covered algorithms
|
HTML document. More...
#include <stdex/html.hpp>
Public Member Functions | |
void | clear () |
Empties document. | |
void | append (_In_reads_or_z_opt_(num_chars) const T *source, size_t num_chars) |
Parses HTML source code by chunks. | |
void | finalize () |
Finalizes document when no more appending is planned. | |
void | assign (_In_reads_or_z_opt_(num_chars) const T *source, size_t num_chars) |
Parses HTML document source code. | |
const std::basic_string< T, TR, AX > & | source () const |
Returns document HTML source code. | |
Protected Member Functions | |
element_start * | active_element () const |
Returns starting tag of currently active element or nullptr if no element is known to be started. | |
std::basic_string< T, TR, AX > | replace_entities (_In_reads_or_z_opt_(num_chars) const T *input, size_t num_chars) const |
Replaces entities with their content. | |
Protected Attributes | |
std::basic_string< T, TR, AX > | m_source |
Document HTML source code. | |
size_t | m_num_parsed |
Number of characters already parsed. | |
stdex::charset_id | m_charset |
Document charset. | |
size_t | m_num_valid_conditions |
Number of started valid conditions. | |
size_t | m_num_invalid_conditions |
Number of started invalid conditions. | |
bool | m_is_cdata |
Inside of CDATA? | |
bool | m_is_rcdata |
Inside of RCDATA? | |
stdex::parser::basic_html_declaration_condition_start< T > | m_condition_start |
stdex::parser::basic_html_declaration_condition_end< T > | m_condition_end |
stdex::parser::basic_any_cu< T > | m_any_char |
std::vector< std::unique_ptr< entity< T, TR, AX > > > | m_entities |
Array of entities. | |
stdex::parser::basic_html_tag< T > | m_tag |
sequence_store | m_sequences |
Store of sequences. | |
std::vector< element_start * > | m_element_stack |
LIFO stack of started elements. | |
bool | m_is_special_element |
Inside of a special element (<SCRIPT>, <STYLE>, ...)? | |
Friends | |
class | parser< T, TR, AX > |
HTML document.