yui_core/traits/
pow_mod2.rs

1use is_even::IsEven;
2use num_traits::One;
3
4pub trait PowMod2<Rhs> 
5where Self: One, Rhs: IsEven {
6    fn pow_mod2(self, rhs: Rhs) -> Self { 
7        if rhs.is_even() { Self::one() } else { self }
8    }
9}
10
11impl<T, Rhs> PowMod2<Rhs> for T
12where T: One, Rhs: IsEven {}
13