Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upUpdate cssparser to 0.18 #17820
Update cssparser to 0.18 #17820
Conversation
highfive
commented
Jul 21, 2017
|
Heads up! This PR modifies the following files:
|
highfive
commented
Jul 21, 2017
|
@bors-servo try |
Update cssparser to 0.18 Do not merge yet, depends on servo/rust-cssparser#171.
|
|
|
|
|
@bors-servo try |
Update cssparser to 0.18 Do not merge yet, depends on servo/rust-cssparser#171. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/17820) <!-- Reviewable:end -->
|
|
|
Looks good... I don't love the fact that the code looks uglier in many places, but... r=me |
| @@ -1231,16 +1232,17 @@ fn parse_qualified_name<'i, 't, P, E, Impl> | |||
| }, | |||
| Ok(Token::Delim('*')) => { | |||
| let position = input.position(); | |||
| match input.next_including_whitespace() { | |||
| // FIXME: remove clone() when lifetimes are non-lexical | |||
| match input.next_including_whitespace().map(|t| t.clone()) { | |||
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
| Ok(Token::Delim('|')) => { | ||
| explicit_namespace(input, QNamePrefix::ExplicitAnyNamespace) | ||
| } | ||
| result => { | ||
| input.reset(position); | ||
| if in_attr_selector { | ||
| match result { | ||
| Ok(t) => Err(ParseError::Basic(BasicParseError::UnexpectedToken(t))), | ||
| Err(e) => Err(ParseError::Basic(e)), | ||
| Ok(t) => Err(ParseError::Basic(BasicParseError::UnexpectedToken(t.clone()))), |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
| @@ -1603,27 +1605,28 @@ fn parse_one_simple_selector<'i, 't, P, E, Impl>(parser: &P, | |||
| where P: Parser<'i, Impl=Impl, Error=E>, Impl: SelectorImpl | |||
| { | |||
| let start_position = input.position(); | |||
| match input.next_including_whitespace() { | |||
| // FIXME: remove clone() when lifetimes are non-lexical | |||
| match input.next_including_whitespace().map(|t| t.clone()) { | |||
This comment has been minimized.
This comment has been minimized.
| let mut flags = 0; | ||
| let result = { | ||
| let mut feature_name = &*ident; | ||
| // FIXME: remove extra indented block when lifetimes are non-lexical |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
SimonSapin
Jul 23, 2017
Author
Member
There’s a draft RFC and prototype: http://smallcultfollowing.com/babysteps/blog/2017/07/11/non-lexical-lifetimes-draft-rfc-and-prototype-available/ . I’m hopeful it’ll land in stable in 2018.
|
|
Update cssparser to 0.18 Do not merge yet, depends on servo/rust-cssparser#171. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/17820) <!-- Reviewable:end -->
|
|
SimonSapin commentedJul 21, 2017
•
edited
Do not merge yet, depends on servo/rust-cssparser#171.This change is