Macro define_theme
macro_rules! define_theme {
(NOTHING=) => { ... };
(
@ext_impls
[ $head_ty:ident $($rest_ty:ident)* ]
[ $head_field:ident $($rest_field:ident)* ]
$name:ident ;
$( $(#[$field_attrs:meta])* $field_name:ident : $field_ty:ty , )*
) => { ... };
(
@ext_impls
[] []
$name:ident ;
$( $(#[$field_attrs:meta])* $field_name:ident : $field_ty:ty , )*
) => { ... };
(
$(#[$attrs:meta])*
$(for = $for_ty:ident ; theme_field = $theme_field:ident ;)+
$(%[component$($component_attr_control:tt)?])?
pub $name:ident {
$(
%[fields$($cows_attr_control:tt)?]
$(
$(#[$field_attrs:meta])*
$field_name:ident: $field_ty:ty,
)*
)?
}) => { ... };
(
$(#[$attrs:meta])*
$(%[component$($component_attr_control:tt)?])?
pub $name:ident {
$(
%[fields$($cows_attr_control:tt)?]
$(
$(#[$field_attrs:meta])*
$field_name:ident: $field_ty:ty,
)*
)?
}) => { ... };
}