#![allow(dead_code, deprecated, unused_variables, unused_mut)] use std::num::NonZero; fn main() { test().unwrap(); } fn test() -> Option<()> { let pos_five = NonZero::new(5i8)?; let neg_five = NonZero::new(-5i8)?; let min = NonZero::new(i8::MIN)?; assert_eq!(pos_five.checked_neg(), Some(neg_five)); assert_eq!(min.checked_neg(), None); Some(()) }