Orcus
|
#include <sax_parser.hpp>
Public Types | |
typedef _Handler | handler_type |
typedef _Config | config_type |
Additional Inherited Members | |
![]() | |
using | numeric_parser_type = std::function< double(const char *&, size_t)> |
![]() | |
parser_base (const char *content, size_t size, bool transient_stream) | |
void | next_check () |
void | nest_up () |
void | nest_down () |
void | inc_buffer_pos () |
void | reset_buffer_pos () |
void | has_char_throw (const char *msg) const |
size_t | remains () const |
char | cur_char_checked () const |
char | next_and_char () |
char | next_char_checked () |
cell_buffer & | get_cell_buffer () |
void | comment () |
void | skip_bom () |
void | expects_next (const char *p, size_t n) |
void | parse_encoded_char (cell_buffer &buf) |
void | value_with_encoded_char (cell_buffer &buf, pstring &str, char quote_char) |
bool | value (pstring &str, bool decode) |
void | name (pstring &str) |
void | element_name (parser_element &elem, std::ptrdiff_t begin_pos) |
void | attribute_name (pstring &attr_ns, pstring &attr_name) |
void | characters_with_encoded_char (cell_buffer &buf) |
![]() | |
parser_base (const char *p, size_t n, bool transient_stream) | |
void | set_numeric_parser (const numeric_parser_type &func) |
bool | transient_stream () const |
bool | has_char () const |
bool | has_next () const |
void | next (size_t inc=1) |
void | prev (size_t dec=1) |
char | cur_char () const |
char | next_char () const |
void | skip (const char *chars_to_skip, size_t n_chars_to_skip) |
void | skip_space_and_control () |
bool | parse_expected (const char *expected, size_t n_expected) |
double | parse_double () |
size_t | remaining_size () const |
size_t | available_size () const |
std::ptrdiff_t | offset () const |
![]() | |
size_t | m_nest_level |
size_t | m_buffer_pos |
bool | m_root_elem_open:1 |
![]() | |
const char *const | mp_begin |
const char * | mp_char |
const char * | mp_end |
const bool | m_transient_stream |
Template-based sax parser that doesn't use function pointer for callbacks for better performance, especially on large XML streams.