Auto merge of #17209 - servo:derive-all-the-things, r=emilio

Introduce more generics and more deriving

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/17209)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2017-06-07 08:55:08 -07:00 committed by GitHub
commit 738483742c
20 changed files with 153 additions and 323 deletions

View file

@ -545,8 +545,6 @@ ${helpers.predefined_type("animation-timing-function",
extra_prefixes="moz webkit"
spec="https://drafts.csswg.org/css-animations/#propdef-animation-iteration-count",
allowed_in_keyframe_block="False">
use std::fmt;
use style_traits::ToCss;
use values::computed::ComputedValueAsSpecified;
pub mod computed_value {
@ -554,8 +552,8 @@ ${helpers.predefined_type("animation-timing-function",
}
// https://drafts.csswg.org/css-animations/#animation-iteration-count
#[derive(Debug, Clone, PartialEq)]
#[cfg_attr(feature = "servo", derive(HeapSizeOf))]
#[derive(Debug, Clone, PartialEq, ToCss)]
pub enum SpecifiedValue {
Number(f32),
Infinite,
@ -576,15 +574,6 @@ ${helpers.predefined_type("animation-timing-function",
}
}
impl ToCss for SpecifiedValue {
fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match *self {
SpecifiedValue::Number(n) => write!(dest, "{}", n),
SpecifiedValue::Infinite => dest.write_str("infinite"),
}
}
}
no_viewport_percentage!(SpecifiedValue);
#[inline]