mirror of
https://github.com/servo/servo.git
synced 2025-08-07 14:35:33 +01:00
Further changes required by Servo
This commit is contained in:
parent
3da2db1c53
commit
29f6170564
1 changed files with 11 additions and 6 deletions
|
@ -121,16 +121,21 @@ impl AttrSelectorOperator {
|
||||||
let case = case_sensitivity;
|
let case = case_sensitivity;
|
||||||
match self {
|
match self {
|
||||||
AttrSelectorOperator::Equal => case.eq(e, s),
|
AttrSelectorOperator::Equal => case.eq(e, s),
|
||||||
AttrSelectorOperator::Prefix => e.len() >= s.len() && case.eq(&e[..s.len()], s),
|
AttrSelectorOperator::Prefix => {
|
||||||
|
!s.is_empty() && e.len() >= s.len() && case.eq(&e[..s.len()], s)
|
||||||
|
},
|
||||||
AttrSelectorOperator::Suffix => {
|
AttrSelectorOperator::Suffix => {
|
||||||
e.len() >= s.len() && case.eq(&e[(e.len() - s.len())..], s)
|
!s.is_empty() && e.len() >= s.len() && case.eq(&e[(e.len() - s.len())..], s)
|
||||||
},
|
},
|
||||||
AttrSelectorOperator::Substring => {
|
AttrSelectorOperator::Substring => {
|
||||||
case.contains(element_attr_value, attr_selector_value)
|
!s.is_empty() && case.contains(element_attr_value, attr_selector_value)
|
||||||
|
},
|
||||||
|
AttrSelectorOperator::Includes => {
|
||||||
|
!s.is_empty() &&
|
||||||
|
element_attr_value
|
||||||
|
.split(SELECTOR_WHITESPACE)
|
||||||
|
.any(|part| case.eq(part.as_bytes(), s))
|
||||||
},
|
},
|
||||||
AttrSelectorOperator::Includes => element_attr_value
|
|
||||||
.split(SELECTOR_WHITESPACE)
|
|
||||||
.any(|part| case.eq(part.as_bytes(), s)),
|
|
||||||
AttrSelectorOperator::DashMatch => {
|
AttrSelectorOperator::DashMatch => {
|
||||||
case.eq(e, s) || (e.get(s.len()) == Some(&b'-') && case.eq(&e[..s.len()], s))
|
case.eq(e, s) || (e.get(s.len()) == Some(&b'-') && case.eq(&e[..s.len()], s))
|
||||||
},
|
},
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue