macro_rules! array_alias_enum {
(
$(
pub enum<$($generic_k:tt: $generic_v:tt),*> $name:ident {
type Parent = $parent:ty;
type Item = $item:ty;
$(
$key:ident => $target_arr:ident;
)*
}
)+
) => { ... };
}