macro_rules! never_impl {
{
$(#[$attr:meta])*
$vis:vis fn $method:ident
$(<
$($($a:lifetime),+$(,)?)?
$($TParam:ident),*$(,)?
>)?(
&self$(,$($value:ident: $T:ty),*$(,)?)?
) $(-> $Returns:ty)? $(where $($wherett:tt)*)?$(;)?
} => { ... };
{
$(#[$attr:meta])*
$vis:vis unsafe fn $method:ident
$(<
$($($a:lifetime),+$(,)?)?
$($TParam:ident),*$(,)?
>)?(
&self$(,$($value:ident: $T:ty),*$(,)?)?
) $(-> $Returns:ty)? $(where $($wherett:tt)*)?$(;)?
} => { ... };
{
$(#[$attr:meta])*
$vis:vis fn $method:ident
$(<
$($($a:lifetime),+$(,)?)?
$($TParam:ident),*$(,)?
>)?(
&mut self$(,$($value:ident: $T:ty),*$(,)?)?
) $(-> $Returns:ty)? $(where $($wherett:tt)*)?$(;)?
} => { ... };
{
$(#[$attr:meta])*
$vis:vis unsafe fn $method:ident
$(<
$($($a:lifetime),+$(,)?)?
$($TParam:ident),*$(,)?
>)?(
&mut self$(,$($value:ident: $T:ty),*$(,)?)?
) $(-> $Returns:ty)? $(where $($wherett:tt)*)?$(;)?
} => { ... };
}