Lines Matching full:pow
6 pub trait Pow<RHS> { trait
15 /// use num_traits::Pow;
16 /// assert_eq!(Pow::pow(10u32, 2u32), 100);
18 fn pow(self, rhs: RHS) -> Self::Output; in pow() method
32 pow_impl!($t, $rhs, usize, pow);
35 impl Pow<$rhs> for $t { impl
38 fn pow(self, rhs: $rhs) -> $t {
43 impl<'a> Pow<&'a $rhs> for $t { impl
46 fn pow(self, rhs: &'a $rhs) -> $t {
51 impl<'a> Pow<$rhs> for &'a $t { impl
54 fn pow(self, rhs: $rhs) -> $t {
59 impl<'a, 'b> Pow<&'a $rhs> for &'b $t { impl
62 fn pow(self, rhs: &'a $rhs) -> $t {
69 pow_impl!(u8, u8, u32, u8::pow);
70 pow_impl!(u8, u16, u32, u8::pow);
71 pow_impl!(u8, u32, u32, u8::pow);
73 pow_impl!(i8, u8, u32, i8::pow);
74 pow_impl!(i8, u16, u32, i8::pow);
75 pow_impl!(i8, u32, u32, i8::pow);
77 pow_impl!(u16, u8, u32, u16::pow);
78 pow_impl!(u16, u16, u32, u16::pow);
79 pow_impl!(u16, u32, u32, u16::pow);
81 pow_impl!(i16, u8, u32, i16::pow);
82 pow_impl!(i16, u16, u32, i16::pow);
83 pow_impl!(i16, u32, u32, i16::pow);
85 pow_impl!(u32, u8, u32, u32::pow);
86 pow_impl!(u32, u16, u32, u32::pow);
87 pow_impl!(u32, u32, u32, u32::pow);
89 pow_impl!(i32, u8, u32, i32::pow);
90 pow_impl!(i32, u16, u32, i32::pow);
91 pow_impl!(i32, u32, u32, i32::pow);
93 pow_impl!(u64, u8, u32, u64::pow);
94 pow_impl!(u64, u16, u32, u64::pow);
95 pow_impl!(u64, u32, u32, u64::pow);
97 pow_impl!(i64, u8, u32, i64::pow);
98 pow_impl!(i64, u16, u32, i64::pow);
99 pow_impl!(i64, u32, u32, i64::pow);
102 pow_impl!(u128, u8, u32, u128::pow);
103 pow_impl!(u128, u16, u32, u128::pow);
104 pow_impl!(u128, u32, u32, u128::pow);
107 pow_impl!(i128, u8, u32, i128::pow);
108 pow_impl!(i128, u16, u32, i128::pow);
109 pow_impl!(i128, u32, u32, i128::pow);
112 pow_impl!(usize, u8, u32, usize::pow);
113 pow_impl!(usize, u16, u32, usize::pow);
114 pow_impl!(usize, u32, u32, usize::pow);
116 pow_impl!(isize, u8, u32, isize::pow);
117 pow_impl!(isize, u16, u32, isize::pow);
118 pow_impl!(isize, u32, u32, isize::pow);
147 use super::Pow;
167 /// Note that `0⁰` (`pow(0, 0)`) returns `1`. Mathematically this is undefined.
172 /// use num_traits::pow;
174 /// assert_eq!(pow(2i8, 4), 16);
175 /// assert_eq!(pow(6u8, 3), 216);
176 /// assert_eq!(pow(0u8, 0), 1); // Be aware if this case affects you
179 pub fn pow<T: Clone + One + Mul<T, Output = T>>(mut base: T, mut exp: usize) -> T { in pow() function
207 /// Otherwise same as the `pow` function.