Orcus
Loading...
Searching...
No Matches
orcus::css_parser< HandlerT > Class Template Reference

#include <css_parser.hpp>

Inheritance diagram for orcus::css_parser< HandlerT >:
orcus::css::parser_base orcus::parser_base

Public Types

typedef HandlerT handler_type

Public Member Functions

 css_parser (std::string_view content, handler_type &hdl)
void parse ()
Public Member Functions inherited from orcus::css::parser_base
 parser_base (std::string_view content)

Additional Inherited Members

Protected Types inherited from orcus::parser_base
using numeric_parser_type = std::function<const char*(const char*, const char*, double&)>
Protected Member Functions inherited from orcus::css::parser_base
void identifier (const char *&p, size_t &len, std::string_view extra=std::string_view{})
uint8_t parse_uint8 ()
std::string_view parse_value ()
double parse_percent ()
double parse_double_or_throw ()
void literal (const char *&p, size_t &len, char quote)
void skip_to (const char *&p, size_t &len, char c)
void skip_to_or_blank (const char *&p, size_t &len, std::string_view chars)
void skip_blanks ()
void skip_blanks_reverse ()
void shrink_stream ()
bool skip_comment ()
void comment ()
void skip_comments_and_blanks ()
void set_combinator (char c, css::combinator_t combinator)
void reset_before_block ()
Protected Member Functions inherited from orcus::parser_base
 parser_base (const char *p, size_t n)
void set_numeric_parser (const numeric_parser_type &func)
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 peek_char (std::size_t offset=1) const
std::string_view peek_chars (std::size_t length) const
void skip_bom ()
void skip (std::string_view chars_to_skip)
void skip_space_and_control ()
bool parse_expected (std::string_view expected)
double parse_double ()
size_t remaining_size () const
size_t available_size () const
std::ptrdiff_t offset () const
Protected Attributes inherited from orcus::css::parser_base
size_t m_simple_selector_count
combinator_t m_combinator
Protected Attributes inherited from orcus::parser_base
const char *const mp_begin
const char * mp_char
const char * mp_end

Detailed Description

template<typename HandlerT>
class orcus::css_parser< HandlerT >

Parser for CSS documents.

Template Parameters
HandlerTHanlder type with member functions for event callbacks. Refer to css_handler.