mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 08:48:11 +00:00
LibWeb: Use a Variant for SimpleSelector's contents
This reduces SimpleSelector's size from 112 bytes to 80 bytes. :^)
This commit is contained in:
parent
218a9af6b3
commit
c0db19f63c
6 changed files with 96 additions and 77 deletions
|
@ -1109,7 +1109,7 @@ void StyleComputer::build_rule_cache()
|
|||
bool added_to_bucket = false;
|
||||
for (auto const& simple_selector : selector.compound_selectors().last().simple_selectors) {
|
||||
if (simple_selector.type == CSS::Selector::SimpleSelector::Type::PseudoElement) {
|
||||
m_rule_cache->rules_by_pseudo_element.ensure(simple_selector.pseudo_element).append(move(matching_rule));
|
||||
m_rule_cache->rules_by_pseudo_element.ensure(simple_selector.pseudo_element()).append(move(matching_rule));
|
||||
++num_pseudo_element_rules;
|
||||
added_to_bucket = true;
|
||||
break;
|
||||
|
@ -1118,19 +1118,19 @@ void StyleComputer::build_rule_cache()
|
|||
if (!added_to_bucket) {
|
||||
for (auto const& simple_selector : selector.compound_selectors().last().simple_selectors) {
|
||||
if (simple_selector.type == CSS::Selector::SimpleSelector::Type::Id) {
|
||||
m_rule_cache->rules_by_id.ensure(simple_selector.value).append(move(matching_rule));
|
||||
m_rule_cache->rules_by_id.ensure(simple_selector.name()).append(move(matching_rule));
|
||||
++num_id_rules;
|
||||
added_to_bucket = true;
|
||||
break;
|
||||
}
|
||||
if (simple_selector.type == CSS::Selector::SimpleSelector::Type::Class) {
|
||||
m_rule_cache->rules_by_class.ensure(simple_selector.value).append(move(matching_rule));
|
||||
m_rule_cache->rules_by_class.ensure(simple_selector.name()).append(move(matching_rule));
|
||||
++num_class_rules;
|
||||
added_to_bucket = true;
|
||||
break;
|
||||
}
|
||||
if (simple_selector.type == CSS::Selector::SimpleSelector::Type::TagName) {
|
||||
m_rule_cache->rules_by_tag_name.ensure(simple_selector.value).append(move(matching_rule));
|
||||
m_rule_cache->rules_by_tag_name.ensure(simple_selector.name()).append(move(matching_rule));
|
||||
++num_tag_name_rules;
|
||||
added_to_bucket = true;
|
||||
break;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue