From e41d72469417fce89a3c48d39b7786c71c937c28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Emilio=20Cobos=20=C3=81lvarez?= Date: Wed, 7 Feb 2018 17:30:28 +0100 Subject: [PATCH] style: Derive ToCss for FontFamilyList. The extra reference in to_css is needed because the family list iterator returns by value in Gecko. --- components/style/values/specified/font.rs | 23 ++--------------------- components/style_derive/to_css.rs | 2 +- 2 files changed, 3 insertions(+), 22 deletions(-) diff --git a/components/style/values/specified/font.rs b/components/style/values/specified/font.rs index c823dca799c..6d126def228 100644 --- a/components/style/values/specified/font.rs +++ b/components/style/values/specified/font.rs @@ -165,9 +165,10 @@ impl From for FontSize { } /// Specifies a prioritized list of font family names or generic family names. -#[derive(Clone, Debug, Eq, Hash, PartialEq)] +#[derive(Clone, Debug, Eq, Hash, PartialEq, ToCss)] pub enum FontFamily { /// List of `font-family` + #[css(iterable, comma)] Values(FontFamilyList), /// System font System(SystemFont), @@ -245,26 +246,6 @@ impl MallocSizeOf for FontFamily { } } -impl ToCss for FontFamily { - fn to_css(&self, dest: &mut CssWriter) -> fmt::Result - where - W: Write, - { - match *self { - FontFamily::Values(ref v) => { - let mut iter = v.iter(); - iter.next().unwrap().to_css(dest)?; - for family in iter { - dest.write_str(", ")?; - family.to_css(dest)?; - } - Ok(()) - } - FontFamily::System(sys) => sys.to_css(dest), - } - } -} - impl Parse for FontFamily { /// # /// = | [ + ] diff --git a/components/style_derive/to_css.rs b/components/style_derive/to_css.rs index f9ac8fcbdd5..93e36753abf 100644 --- a/components/style_derive/to_css.rs +++ b/components/style_derive/to_css.rs @@ -44,7 +44,7 @@ pub fn derive(input: DeriveInput) -> Tokens { #expr for item in #binding.iter() { - writer.item(item)?; + writer.item(&item)?; } }; } else {