Macro jit_func
Source macro_rules! jit_func {
(for ($base:expr) impl $exec:expr, fn($fn_id:expr),
fn $name:ident<$(($t:ident = $T:ty),)* $(const ($n:ident = $N:expr): $nt:ty),*>($($a:ident: $A:ty),*) -> $Ret:ty
where $($t_:ty: $clause:tt),*; $body:tt
) => { ... };
(for ($base:expr) impl $exec:expr, fn($fn_id:expr),
const fn $name:ident<$(($t:ident = $T:ty),)* $(const ($n:ident = $N:expr): $nt:ty),*>($($a:ident: $A:ty),*) -> $Ret:ty
where $($t_:ty: $clause:tt),*; $body:tt
) => { ... };
(for ($base:expr) impl $exec:expr, fn($fn_id:expr), $runtime_id:expr,
fn $name:ident<$(($t:ident = $T:ty),)* $(const ($n:ident = $N:expr): $nt:ty),*>($runtime:ident: $Runtime:ty, $($a:ident: $A:ty),*) -> $Ret:ty
where $($t_:ty: $clause:tt),*; $body:tt
) => { ... };
(for ($base:expr) impl $exec:expr, fn($fn_id:expr), $runtime_id:expr,
const fn $name:ident<$(($t:ident = $T:ty),)* $(const ($n:ident = $N:expr): $nt:ty),*>($runtime:ident: $Runtime:ty, $($a:ident: $A:ty),*) -> $Ret:ty
where $($t_:ty: $clause:tt),*; $body:tt
) => { ... };
(for ($base:expr) impl $exec:expr, fn<$($param:expr),*;>($fn_id:expr),
fn $name:ident<$(($t:ident = $T:ty),)* $(const ($n:ident = $N:expr): $nt:ty),*>($($a:ident: $A:ty),*) -> $Ret:ty
where $($t_:ty: $clause:tt),*; $body:tt
) => { ... };
(for ($base:expr) impl $exec:expr, fn<$($param:expr),*;>($fn_id:expr),
const fn $name:ident<$(($t:ident = $T:ty),)* $(const ($n:ident = $N:expr): $nt:ty),*>($($a:ident: $A:ty),*) -> $Ret:ty
where $($t_:ty: $clause:tt),*; $body:tt
) => { ... };
(for ($base:expr) impl $exec:expr, fn<$($param:expr),*;>($fn_id:expr), $runtime_id:expr,
fn $name:ident<$(($t:ident = $T:ty),)* $(const ($n:ident = $N:expr): $nt:ty),*>($runtime:ident: $Runtime:ty, $($a:ident: $A:ty),*) -> $Ret:ty
where $($t_:ty: $clause:tt),*; $body:tt
) => { ... };
(for ($base:expr) impl $exec:expr, fn<$($param:expr),*;>($fn_id:expr), $runtime_id:expr,
const fn $name:ident<$(($t:ident = $T:ty),)* $(const ($n:ident = $N:expr): $nt:ty),*>($runtime:ident: $Runtime:ty, $($a:ident: $A:ty),*) -> $Ret:ty
where $($t_:ty: $clause:tt),*; $body:tt
) => { ... };
($exec:expr, fn($fn_id:expr),
fn $name:ident<$(($t:ident = $T:ty),)* $(const ($n:ident = $N:expr): $nt:ty),*>($($a:ident: $A:ty),*) -> $Ret:ty
where $($t_:ty: $clause:tt),*; $body:tt
) => { ... };
($exec:expr, fn($fn_id:expr),
const fn $name:ident<$(($t:ident = $T:ty),)* $(const ($n:ident = $N:expr): $nt:ty),*>($($a:ident: $A:ty),*) -> $Ret:ty
where $($t_:ty: $clause:tt),*; $body:tt
) => { ... };
($exec:expr, fn($fn_id:expr), $runtime_id:expr,
fn $name:ident<$(($t:ident = $T:ty),)* $(const ($n:ident = $N:expr): $nt:ty),*>($runtime:ident: $Runtime:ty, $($a:ident: $A:ty),*) -> $Ret:ty
where $($t_:ty: $clause:tt),*; $body:tt
) => { ... };
($exec:expr, fn($fn_id:expr), $runtime_id:expr,
const fn $name:ident<$(($t:ident = $T:ty),)* $(const ($n:ident = $N:expr): $nt:ty),*>($runtime:ident: $Runtime:ty, $($a:ident: $A:ty),*) -> $Ret:ty
where $($t_:ty: $clause:tt),*; $body:tt
) => { ... };
($exec:expr, fn<$($param:expr),*;>($fn_id:expr),
fn $name:ident<$(($t:ident = $T:ty),)* $(const ($n:ident = $N:expr): $nt:ty),*>($($a:ident: $A:ty),*) -> $Ret:ty
where $($t_:ty: $clause:tt),*; $body:tt
) => { ... };
($exec:expr, fn<$($param:expr),*;>($fn_id:expr),
const fn $name:ident<$(($t:ident = $T:ty),)* $(const ($n:ident = $N:expr): $nt:ty),*>($($a:ident: $A:ty),*) -> $Ret:ty
where $($t_:ty: $clause:tt),*; $body:tt
) => { ... };
($exec:expr, fn<$($param:expr),*;>($fn_id:expr), $runtime_id:expr,
fn $name:ident<$(($t:ident = $T:ty),)* $(const ($n:ident = $N:expr): $nt:ty),*>($runtime:ident: $Runtime:ty, $($a:ident: $A:ty),*) -> $Ret:ty
where $($t_:ty: $clause:tt),*; $body:tt
) => { ... };
($exec:expr, fn<$($param:expr),*;>($fn_id:expr), $runtime_id:expr,
const fn $name:ident<$(($t:ident = $T:ty),)* $(const ($n:ident = $N:expr): $nt:ty),*>($runtime:ident: $Runtime:ty, $($a:ident: $A:ty),*) -> $Ret:ty
where $($t_:ty: $clause:tt),*; $body:tt
) => { ... };
}