diff options
-rw-r--r-- | components/style/gecko/selector_parser.rs | 2 | ||||
-rw-r--r-- | components/style/lib.rs | 27 | ||||
-rw-r--r-- | components/style/media_queries.rs | 13 |
3 files changed, 3 insertions, 39 deletions
diff --git a/components/style/gecko/selector_parser.rs b/components/style/gecko/selector_parser.rs index c009dc6b65e..434d2fef414 100644 --- a/components/style/gecko/selector_parser.rs +++ b/components/style/gecko/selector_parser.rs @@ -66,7 +66,7 @@ apply_non_ts_list!(pseudo_class_name); impl ToCss for NonTSPseudoClass { fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write { use cssparser::CssStringWriter; - use fmt::Write; + use std::fmt::Write; macro_rules! pseudo_class_serialize { (bare: [$(($css:expr, $name:ident, $gecko_type:tt, $state:tt, $flags:tt),)*], string: [$(($s_css:expr, $s_name:ident, $s_gecko_type:tt, $s_state:tt, $s_flags:tt),)*]) => { diff --git a/components/style/lib.rs b/components/style/lib.rs index 84ccd32574e..49acbe35f13 100644 --- a/components/style/lib.rs +++ b/components/style/lib.rs @@ -133,9 +133,6 @@ pub mod traversal_flags; #[allow(non_camel_case_types)] pub mod values; -use std::fmt::{self, Write}; -use style_traits::{CssWriter, ToCss}; - #[cfg(feature = "gecko")] pub use gecko_string_cache as string_cache; #[cfg(feature = "gecko")] pub use gecko_string_cache::Atom; #[cfg(feature = "gecko")] pub use gecko_string_cache::Namespace; @@ -181,30 +178,6 @@ macro_rules! reexport_computed_values { } longhand_properties_idents!(reexport_computed_values); -/// Serializes as CSS a comma-separated list of any `T` that supports being -/// serialized as CSS. -pub fn serialize_comma_separated_list<W, T>( - dest: &mut CssWriter<W>, - list: &[T], -) -> fmt::Result -where - W: Write, - T: ToCss, -{ - if list.is_empty() { - return Ok(()); - } - - list[0].to_css(dest)?; - - for item in list.iter().skip(1) { - dest.write_str(", ")?; - item.to_css(dest)?; - } - - Ok(()) -} - #[cfg(feature = "gecko")] use gecko_string_cache::WeakAtom; #[cfg(feature = "servo")] use servo_atoms::Atom as WeakAtom; diff --git a/components/style/media_queries.rs b/components/style/media_queries.rs index 8941b21a30a..e6fb4614762 100644 --- a/components/style/media_queries.rs +++ b/components/style/media_queries.rs @@ -13,7 +13,6 @@ use cssparser::{Token, ParserInput}; use error_reporting::{ContextualParseError, ParseErrorReporter}; use parser::{ParserContext, ParserErrorContext}; use selectors::parser::SelectorParseErrorKind; -use serialize_comma_separated_list; use std::fmt::{self, Write}; use str::string_as_ascii_lowercase; use style_traits::{CssWriter, ToCss, ParseError, StyleParseErrorKind}; @@ -25,22 +24,14 @@ pub use servo::media_queries::{Device, Expression}; pub use gecko::media_queries::{Device, Expression}; /// A type that encapsulates a media query list. -#[derive(Clone, Debug)] #[cfg_attr(feature = "servo", derive(MallocSizeOf))] +#[css(comma, iterable)] +#[derive(Clone, Debug, ToCss)] pub struct MediaList { /// The list of media queries. pub media_queries: Vec<MediaQuery>, } -impl ToCss for MediaList { - fn to_css<W>(&self, dest: &mut CssWriter<W>) -> fmt::Result - where - W: Write, - { - serialize_comma_separated_list(dest, &self.media_queries) - } -} - impl MediaList { /// Create an empty MediaList. pub fn empty() -> Self { |