macro_rules! type_value_table {
(
ENUM_OUT: {
#[vars( $( $all_meta: meta ),* $(,)? )]
$( #[$enum_meta: meta] )*
$enum_vis: vis enum $enum_ident: ident {
$(
$( #[$var_meta: meta] )*
$var_ident: ident $( ( $($var_tuple: tt)* ) )? $( { $($var_fields: tt)* } )?
),*
$(,)?
}
}
TABLE: {
$( #[$table_meta: meta] )*
$table_vis: vis struct $table_ident: ident < $gen: ident > $(;)? $({})?
}
) => { ... };
(
ENUM_OUT: {
#[vars( $( $all_meta: meta ),* $(,)? )]
$( #[$enum_meta: meta] )*
$enum_vis: vis enum $enum_ident: ident {
$(
$( #[$var_meta: meta] )*
$var_ident: ident $( ( $($var_tuple: tt)* ) )? $( { $($var_fields: tt)* } )?
),*
$(,)?
}
}
TABLE: {
$( #[$table_meta: meta] )*
$table_vis: vis struct $table_ident: ident < $gen: ident > $(;)? $({})?
}
DELEGATES: {
$(
trait $trait_ident: ident $( < [ $( $gens: tt )* ] > )? {
$( [ $( $item: tt )* ] )*
}
)*
$(
impl {
$( [ $( $std_impl: tt )* ] )*
}
)?
}
) => { ... };
(
ENUM_IN: $enum_ident: ident $(;)? $({})?
TABLE: {
$( #[$table_meta: meta] )*
$table_vis: vis struct $table_ident: ident< $gen: ident > {
$( $var_ident: ident ),*
$(,)?
}
}
) => { ... };
(
$( #[$table_meta: meta] )*
$table_vis: vis struct $table_ident: ident < $gen: ident > {
$( $var_ident: ident ),*
$(,)?
}
) => { ... };
}