macro_rules! repository_insert {
{
$ident:ident<$model:ty>;
} => { ... };
{
$ident:ident<$model:ty>;
$method_name:ident($param:pat_param) $block:block
} => { ... };
{
$ident:ident<$model:ty>;
$($tokens:tt)*
} => { ... };
{
!inner
$ident:ident<$model:ty>;
$($tokens:tt)*
} => { ... };
}