From 16afa6ea58a9a2a97e7a371468488c3736b06e94 Mon Sep 17 00:00:00 2001 From: Anthony Ramine Date: Thu, 15 Jun 2017 15:37:04 +0200 Subject: [PATCH] Derive ToCss for computed LengthOrPercentage types --- components/style/values/computed/length.rs | 60 +++------------------- 1 file changed, 8 insertions(+), 52 deletions(-) diff --git a/components/style/values/computed/length.rs b/components/style/values/computed/length.rs index ba7f73de943..be803379c65 100644 --- a/components/style/values/computed/length.rs +++ b/components/style/values/computed/length.rs @@ -233,9 +233,9 @@ impl ToComputedValue for specified::CalcLengthOrPercentage { } } -#[derive(PartialEq, Clone, Copy)] -#[cfg_attr(feature = "servo", derive(HeapSizeOf))] #[allow(missing_docs)] +#[cfg_attr(feature = "servo", derive(HeapSizeOf))] +#[derive(Clone, Copy, PartialEq, ToCss)] pub enum LengthOrPercentage { Length(Au), Percentage(Percentage), @@ -343,19 +343,9 @@ impl ToComputedValue for specified::LengthOrPercentage { } } -impl ToCss for LengthOrPercentage { - fn to_css(&self, dest: &mut W) -> fmt::Result where W: fmt::Write { - match *self { - LengthOrPercentage::Length(length) => length.to_css(dest), - LengthOrPercentage::Percentage(percentage) => percentage.to_css(dest), - LengthOrPercentage::Calc(calc) => calc.to_css(dest), - } - } -} - -#[derive(PartialEq, Clone, Copy)] -#[cfg_attr(feature = "servo", derive(HeapSizeOf))] #[allow(missing_docs)] +#[cfg_attr(feature = "servo", derive(HeapSizeOf))] +#[derive(Clone, Copy, PartialEq, ToCss)] pub enum LengthOrPercentageOrAuto { Length(Au), Percentage(Percentage), @@ -431,20 +421,9 @@ impl ToComputedValue for specified::LengthOrPercentageOrAuto { } } -impl ToCss for LengthOrPercentageOrAuto { - fn to_css(&self, dest: &mut W) -> fmt::Result where W: fmt::Write { - match *self { - LengthOrPercentageOrAuto::Length(length) => length.to_css(dest), - LengthOrPercentageOrAuto::Percentage(percentage) => percentage.to_css(dest), - LengthOrPercentageOrAuto::Auto => dest.write_str("auto"), - LengthOrPercentageOrAuto::Calc(calc) => calc.to_css(dest), - } - } -} - -#[derive(PartialEq, Clone, Copy)] -#[cfg_attr(feature = "servo", derive(HeapSizeOf))] #[allow(missing_docs)] +#[cfg_attr(feature = "servo", derive(HeapSizeOf))] +#[derive(Clone, Copy, PartialEq, ToCss)] pub enum LengthOrPercentageOrAutoOrContent { Length(Au), Percentage(Percentage), @@ -516,21 +495,9 @@ impl ToComputedValue for specified::LengthOrPercentageOrAutoOrContent { } } -impl ToCss for LengthOrPercentageOrAutoOrContent { - fn to_css(&self, dest: &mut W) -> fmt::Result where W: fmt::Write { - match *self { - LengthOrPercentageOrAutoOrContent::Length(length) => length.to_css(dest), - LengthOrPercentageOrAutoOrContent::Percentage(percentage) => percentage.to_css(dest), - LengthOrPercentageOrAutoOrContent::Calc(calc) => calc.to_css(dest), - LengthOrPercentageOrAutoOrContent::Auto => dest.write_str("auto"), - LengthOrPercentageOrAutoOrContent::Content => dest.write_str("content") - } - } -} - -#[derive(PartialEq, Clone, Copy)] -#[cfg_attr(feature = "servo", derive(HeapSizeOf))] #[allow(missing_docs)] +#[cfg_attr(feature = "servo", derive(HeapSizeOf))] +#[derive(Clone, Copy, PartialEq, ToCss)] pub enum LengthOrPercentageOrNone { Length(Au), Percentage(Percentage), @@ -603,17 +570,6 @@ impl ToComputedValue for specified::LengthOrPercentageOrNone { } } -impl ToCss for LengthOrPercentageOrNone { - fn to_css(&self, dest: &mut W) -> fmt::Result where W: fmt::Write { - match *self { - LengthOrPercentageOrNone::Length(length) => length.to_css(dest), - LengthOrPercentageOrNone::Percentage(percentage) => percentage.to_css(dest), - LengthOrPercentageOrNone::Calc(calc) => calc.to_css(dest), - LengthOrPercentageOrNone::None => dest.write_str("none"), - } - } -} - /// A computed `` value. pub type Length = Au;