mirror of
https://github.com/servo/servo.git
synced 2025-08-06 06:00:15 +01:00
Change LengthOrPercentageOrAutoOrContent to use NoCalcLength
This commit is contained in:
parent
39ae0bbf47
commit
8d09d64856
2 changed files with 5 additions and 5 deletions
|
@ -57,7 +57,7 @@
|
|||
<%helpers:shorthand name="flex" sub_properties="flex-grow flex-shrink flex-basis" extra_prefixes="webkit"
|
||||
spec="https://drafts.csswg.org/css-flexbox/#flex-property">
|
||||
use parser::Parse;
|
||||
use values::specified::{Number, Length, LengthOrPercentageOrAutoOrContent};
|
||||
use values::specified::{Number, NoCalcLength, LengthOrPercentageOrAutoOrContent};
|
||||
|
||||
pub fn parse_flexibility(input: &mut Parser)
|
||||
-> Result<(Number, Option<Number>),()> {
|
||||
|
@ -101,7 +101,7 @@
|
|||
Ok(Longhands {
|
||||
flex_grow: grow.or(Some(Number(1.0))),
|
||||
flex_shrink: shrink.or(Some(Number(1.0))),
|
||||
flex_basis: basis.or(Some(LengthOrPercentageOrAutoOrContent::Length(Length::zero())))
|
||||
flex_basis: basis.or(Some(LengthOrPercentageOrAutoOrContent::Length(NoCalcLength::zero())))
|
||||
})
|
||||
}
|
||||
|
||||
|
|
|
@ -1134,7 +1134,7 @@ pub type LengthOrAuto = Either<Length, Auto>;
|
|||
#[cfg_attr(feature = "servo", derive(HeapSizeOf))]
|
||||
pub enum LengthOrPercentageOrAutoOrContent {
|
||||
/// A `<length>`.
|
||||
Length(Length),
|
||||
Length(NoCalcLength),
|
||||
/// A percentage.
|
||||
Percentage(Percentage),
|
||||
/// A `calc` node.
|
||||
|
@ -1172,11 +1172,11 @@ impl Parse for LengthOrPercentageOrAutoOrContent {
|
|||
let context = AllowedNumericType::NonNegative;
|
||||
match try!(input.next()) {
|
||||
Token::Dimension(ref value, ref unit) if context.is_ok(value.value) =>
|
||||
Length::parse_dimension(value.value, unit).map(LengthOrPercentageOrAutoOrContent::Length),
|
||||
NoCalcLength::parse_dimension(value.value, unit).map(LengthOrPercentageOrAutoOrContent::Length),
|
||||
Token::Percentage(ref value) if context.is_ok(value.unit_value) =>
|
||||
Ok(LengthOrPercentageOrAutoOrContent::Percentage(Percentage(value.unit_value))),
|
||||
Token::Number(ref value) if value.value == 0. =>
|
||||
Ok(LengthOrPercentageOrAutoOrContent::Length(Length::zero())),
|
||||
Ok(LengthOrPercentageOrAutoOrContent::Length(NoCalcLength::zero())),
|
||||
Token::Ident(ref value) if value.eq_ignore_ascii_case("auto") =>
|
||||
Ok(LengthOrPercentageOrAutoOrContent::Auto),
|
||||
Token::Ident(ref value) if value.eq_ignore_ascii_case("content") =>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue