#![allow(dead_code, deprecated, unused_variables, unused_mut)] use std::num::NonZero; fn main() { test().unwrap(); } fn test() -> Option<()> { let two = NonZero::new(2u8)?; let three = NonZero::new(3u8)?; let four = NonZero::new(4u8)?; let max = NonZero::new(u8::MAX)?; assert_eq!(Some(two), two.checked_next_power_of_two()); assert_eq!(Some(four), three.checked_next_power_of_two()); assert_eq!(None, max.checked_next_power_of_two()); Some(()) }