[−][src]Function num_traits::pow::checked_pow
pub fn checked_pow<T: Clone + One + CheckedMul>(
base: T,
exp: usize
) -> Option<T>
Raises a value to the power of exp, returning None
if an overflow occurred.
Note that 0⁰
(checked_pow(0, 0)
) returns Some(1)
. Mathematically this is undefined.
Otherwise same as the pow
function.
Example
use num_traits::checked_pow; assert_eq!(checked_pow(2i8, 4), Some(16)); assert_eq!(checked_pow(7i8, 8), None); assert_eq!(checked_pow(7u32, 8), Some(5_764_801)); assert_eq!(checked_pow(0u32, 0), Some(1)); // Be aware if this case affect you