pub fn constrained_mod_exp<T>(base: T, exponent: &T, modulus: &T) -> Twhere for<'a> T: PartialOrd + One + Zero + WrappingAdd + WrappingSub + ShrAssign<usize> + Shr<usize, Output = T> + RemAssign<&'a T> + DivAssign<&'a T> + Rem<&'a T, Output = T>, for<'a> &'a T: Rem<&'a T, Output = T> + BitAnd<Output = T>,
Version that works with references, requires WrappingAdd and WrappingSub traits to be implemented.
WrappingAdd
WrappingSub