mirror of
https://github.com/servo/servo.git
synced 2025-08-06 22:15:33 +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"
|
<%helpers:shorthand name="flex" sub_properties="flex-grow flex-shrink flex-basis" extra_prefixes="webkit"
|
||||||
spec="https://drafts.csswg.org/css-flexbox/#flex-property">
|
spec="https://drafts.csswg.org/css-flexbox/#flex-property">
|
||||||
use parser::Parse;
|
use parser::Parse;
|
||||||
use values::specified::{Number, Length, LengthOrPercentageOrAutoOrContent};
|
use values::specified::{Number, NoCalcLength, LengthOrPercentageOrAutoOrContent};
|
||||||
|
|
||||||
pub fn parse_flexibility(input: &mut Parser)
|
pub fn parse_flexibility(input: &mut Parser)
|
||||||
-> Result<(Number, Option<Number>),()> {
|
-> Result<(Number, Option<Number>),()> {
|
||||||
|
@ -101,7 +101,7 @@
|
||||||
Ok(Longhands {
|
Ok(Longhands {
|
||||||
flex_grow: grow.or(Some(Number(1.0))),
|
flex_grow: grow.or(Some(Number(1.0))),
|
||||||
flex_shrink: shrink.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))]
|
#[cfg_attr(feature = "servo", derive(HeapSizeOf))]
|
||||||
pub enum LengthOrPercentageOrAutoOrContent {
|
pub enum LengthOrPercentageOrAutoOrContent {
|
||||||
/// A `<length>`.
|
/// A `<length>`.
|
||||||
Length(Length),
|
Length(NoCalcLength),
|
||||||
/// A percentage.
|
/// A percentage.
|
||||||
Percentage(Percentage),
|
Percentage(Percentage),
|
||||||
/// A `calc` node.
|
/// A `calc` node.
|
||||||
|
@ -1172,11 +1172,11 @@ impl Parse for LengthOrPercentageOrAutoOrContent {
|
||||||
let context = AllowedNumericType::NonNegative;
|
let context = AllowedNumericType::NonNegative;
|
||||||
match try!(input.next()) {
|
match try!(input.next()) {
|
||||||
Token::Dimension(ref value, ref unit) if context.is_ok(value.value) =>
|
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) =>
|
Token::Percentage(ref value) if context.is_ok(value.unit_value) =>
|
||||||
Ok(LengthOrPercentageOrAutoOrContent::Percentage(Percentage(value.unit_value))),
|
Ok(LengthOrPercentageOrAutoOrContent::Percentage(Percentage(value.unit_value))),
|
||||||
Token::Number(ref value) if value.value == 0. =>
|
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") =>
|
Token::Ident(ref value) if value.eq_ignore_ascii_case("auto") =>
|
||||||
Ok(LengthOrPercentageOrAutoOrContent::Auto),
|
Ok(LengthOrPercentageOrAutoOrContent::Auto),
|
||||||
Token::Ident(ref value) if value.eq_ignore_ascii_case("content") =>
|
Token::Ident(ref value) if value.eq_ignore_ascii_case("content") =>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue