mirror of
https://github.com/servo/servo.git
synced 2025-08-03 12:40:06 +01:00
Move GetRules function into macro.
This commit is contained in:
parent
04aac0247a
commit
f19b9763cf
1 changed files with 18 additions and 8 deletions
|
@ -780,13 +780,30 @@ macro_rules! impl_basic_rule_funcs {
|
|||
}
|
||||
}
|
||||
|
||||
macro_rules! impl_group_rule_funcs {
|
||||
{ ($name:ident, $rule_type:ty, $raw_type:ty),
|
||||
get_rules: $get_rules:ident,
|
||||
$($basic:tt)+
|
||||
} => {
|
||||
impl_basic_rule_funcs! { ($name, $rule_type, $raw_type), $($basic)+ }
|
||||
|
||||
#[no_mangle]
|
||||
pub extern "C" fn $get_rules(rule: &$raw_type) -> ServoCssRulesStrong {
|
||||
read_locked_arc(rule, |rule: &$rule_type| {
|
||||
rule.rules.clone().into_strong()
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl_basic_rule_funcs! { (Style, StyleRule, RawServoStyleRule),
|
||||
getter: Servo_CssRules_GetStyleRuleAt,
|
||||
debug: Servo_StyleRule_Debug,
|
||||
to_css: Servo_StyleRule_GetCssText,
|
||||
}
|
||||
|
||||
impl_basic_rule_funcs! { (Media, MediaRule, RawServoMediaRule),
|
||||
impl_group_rule_funcs! { (Media, MediaRule, RawServoMediaRule),
|
||||
get_rules: Servo_MediaRule_GetRules,
|
||||
getter: Servo_CssRules_GetMediaRuleAt,
|
||||
debug: Servo_MediaRule_Debug,
|
||||
to_css: Servo_MediaRule_GetCssText,
|
||||
|
@ -847,13 +864,6 @@ pub extern "C" fn Servo_MediaRule_GetMedia(rule: RawServoMediaRuleBorrowed) -> R
|
|||
})
|
||||
}
|
||||
|
||||
#[no_mangle]
|
||||
pub extern "C" fn Servo_MediaRule_GetRules(rule: RawServoMediaRuleBorrowed) -> ServoCssRulesStrong {
|
||||
read_locked_arc(rule, |rule: &MediaRule| {
|
||||
rule.rules.clone().into_strong()
|
||||
})
|
||||
}
|
||||
|
||||
#[no_mangle]
|
||||
pub extern "C" fn Servo_NamespaceRule_GetPrefix(rule: RawServoNamespaceRuleBorrowed) -> *mut nsIAtom {
|
||||
read_locked_arc(rule, |rule: &NamespaceRule| {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue