pub trait IsOne {
fn is_one(&self) -> bool;
}
macro_rules! implement_isone_prim {
([$($prim:tt),*]) => {
};
($bits:tt) => {paste!{
impl IsOne for [<i $bits>] { #[inline(always)] fn is_one(&self) -> bool {*self == 1 }}
impl IsOne for &[<i $bits>] { #[inline(always)] fn is_one(&self) -> bool {**self == 1 }}
impl IsOne for [<u $bits>] { #[inline(always)] fn is_one(&self) -> bool {*self == 1 }}
impl IsOne for &[<u $bits>] { #[inline(always)] fn is_one(&self) -> bool {**self == 1 }}
}};
}
implement_isone_prim!([8,16,32,64,128,size]);