Auto merge of #19618 - upsuper:border-image-repeat, r=emilio

Convert NS_STYLE_BORDER_IMAGE_REPEAT_* to an enum class

This is the Servo side change of [bug 1325940](https://bugzilla.mozilla.org/show_bug.cgi?id=1325940).

<!-- 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/19618)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2017-12-21 01:34:04 -06:00 committed by GitHub
commit df0f9ad7ae
2 changed files with 52 additions and 49 deletions

File diff suppressed because one or more lines are too long

View file

@ -1789,16 +1789,14 @@ fn static_assert() {
pub fn set_border_image_repeat(&mut self, v: longhands::border_image_repeat::computed_value::T) { pub fn set_border_image_repeat(&mut self, v: longhands::border_image_repeat::computed_value::T) {
use properties::longhands::border_image_repeat::computed_value::RepeatKeyword; use properties::longhands::border_image_repeat::computed_value::RepeatKeyword;
use gecko_bindings::structs; use gecko_bindings::structs::StyleBorderImageRepeat;
% for i, side in enumerate(["H", "V"]): % for i, side in enumerate(["H", "V"]):
let k = match v.${i} { self.gecko.mBorderImageRepeat${side} = match v.${i} {
% for keyword in border_image_repeat_keywords: % for keyword in border_image_repeat_keywords:
RepeatKeyword::${keyword} => structs::NS_STYLE_BORDER_IMAGE_REPEAT_${keyword.upper()}, RepeatKeyword::${keyword} => StyleBorderImageRepeat::${keyword},
% endfor % endfor
}; };
self.gecko.mBorderImageRepeat${side} = k as u8;
% endfor % endfor
} }
@ -1813,14 +1811,13 @@ fn static_assert() {
pub fn clone_border_image_repeat(&self) -> longhands::border_image_repeat::computed_value::T { pub fn clone_border_image_repeat(&self) -> longhands::border_image_repeat::computed_value::T {
use properties::longhands::border_image_repeat::computed_value::RepeatKeyword; use properties::longhands::border_image_repeat::computed_value::RepeatKeyword;
use gecko_bindings::structs; use gecko_bindings::structs::StyleBorderImageRepeat;
% for side in ["H", "V"]: % for side in ["H", "V"]:
let servo_${side.lower()} = match self.gecko.mBorderImageRepeat${side} as u32 { let servo_${side.lower()} = match self.gecko.mBorderImageRepeat${side} {
% for keyword in border_image_repeat_keywords: % for keyword in border_image_repeat_keywords:
structs::NS_STYLE_BORDER_IMAGE_REPEAT_${keyword.upper()} => RepeatKeyword::${keyword}, StyleBorderImageRepeat::${keyword} => RepeatKeyword::${keyword},
% endfor % endfor
x => panic!("Found unexpected value in mBorderImageRepeat${side}: {:?}", x),
}; };
% endfor % endfor
longhands::border_image_repeat::computed_value::T(servo_h, servo_v) longhands::border_image_repeat::computed_value::T(servo_h, servo_v)