#![allow(dead_code, deprecated, unused_variables, unused_mut)] #![feature(bool_to_result)] fn main() { let mut a = 0; let mut function_with_side_effects = || { a += 1; }; assert!(true.ok_or(function_with_side_effects()).is_ok()); assert!(false.ok_or(function_with_side_effects()).is_err()); assert_eq!(a, 2); }