8#ifndef INCLUDED_ORCUS_CSS_SELECTOR_HPP
9#define INCLUDED_ORCUS_CSS_SELECTOR_HPP
11#include "orcus/env.hpp"
12#include "orcus/pstring.hpp"
13#include "orcus/css_types.hpp"
17#include <unordered_set>
18#include <unordered_map>
24 typedef std::unordered_set<pstring, pstring::hash> classes_type;
29 css::pseudo_class_t pseudo_classes;
47 css::combinator_t combinator;
62 typedef std::vector<css_chained_simple_selector_t> chained_type;
76 css::property_value_t type;
113 css_property_value_t();
114 css_property_value_t(
const css_property_value_t& r);
131typedef std::unordered_map<pstring, std::vector<css_property_value_t>,
pstring::hash> css_properties_t;
132typedef std::unordered_map<css::pseudo_element_t, css_properties_t> css_pseudo_element_properties_t;
135ORCUS_DLLPUBLIC std::ostream& operator<< (std::ostream& os,
const css_selector_t& v);
Definition: pstring.hpp:28
Definition: css_selector.hpp:46
Definition: css_selector.hpp:75
uint8_t saturation
0 to 360 where 0-red, 120-green, and 240-blue
Definition: css_selector.hpp:104
const char * str
Definition: css_selector.hpp:86
uint8_t green
0 to 255
Definition: css_selector.hpp:97
css_property_value_t(const pstring &_str)
uint8_t blue
0 to 255
Definition: css_selector.hpp:98
uint8_t lightness
percentage
Definition: css_selector.hpp:105
Definition: css_selector.hpp:61
Definition: css_selector.hpp:40
Definition: css_selector.hpp:23
Definition: pstring.hpp:83