diff options
Diffstat (limited to 'components/selectors/builder.rs')
-rw-r--r-- | components/selectors/builder.rs | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/components/selectors/builder.rs b/components/selectors/builder.rs index 584a210152f..33c0ec1b694 100644 --- a/components/selectors/builder.rs +++ b/components/selectors/builder.rs @@ -105,7 +105,7 @@ impl<Impl: SelectorImpl> SelectorBuilder<Impl> { parsed_slotted: bool, ) -> ThinArc<SpecificityAndFlags, Component<Impl>> { // Compute the specificity and flags. - let mut spec = SpecificityAndFlags(specificity(&*self, self.simple_selectors.iter())); + let mut spec = SpecificityAndFlags(specificity(self.simple_selectors.iter())); if parsed_pseudo { spec.0 |= HAS_PSEUDO_BIT; } @@ -281,33 +281,26 @@ impl From<Specificity> for u32 { } } -fn specificity<Impl>(builder: &SelectorBuilder<Impl>, iter: slice::Iter<Component<Impl>>) -> u32 +fn specificity<Impl>(iter: slice::Iter<Component<Impl>>) -> u32 where Impl: SelectorImpl, { - complex_selector_specificity(builder, iter).into() + complex_selector_specificity(iter).into() } -fn complex_selector_specificity<Impl>( - builder: &SelectorBuilder<Impl>, - mut iter: slice::Iter<Component<Impl>>, -) -> Specificity +fn complex_selector_specificity<Impl>(iter: slice::Iter<Component<Impl>>) -> Specificity where Impl: SelectorImpl, { fn simple_selector_specificity<Impl>( - builder: &SelectorBuilder<Impl>, simple_selector: &Component<Impl>, specificity: &mut Specificity, ) where Impl: SelectorImpl, { match *simple_selector { - Component::Combinator(ref combinator) => { - unreachable!( - "Found combinator {:?} in simple selectors vector? {:?}", - combinator, builder, - ); + Component::Combinator(..) => { + unreachable!("Found combinator in simple selectors vector?"); }, Component::PseudoElement(..) | Component::LocalName(..) => { specificity.element_selectors += 1 @@ -361,15 +354,15 @@ where }, Component::Negation(ref negated) => { for ss in negated.iter() { - simple_selector_specificity(builder, &ss, specificity); + simple_selector_specificity(&ss, specificity); } }, } } let mut specificity = Default::default(); - for simple_selector in &mut iter { - simple_selector_specificity(builder, &simple_selector, &mut specificity); + for simple_selector in iter { + simple_selector_specificity(&simple_selector, &mut specificity); } specificity } |