1 2 3 4 5 6 7 8 9 10 11
use std::ops::SubAssign; pub fn check_and_use<T, K>(resource: &mut T, cost: K) -> bool where T: SubAssign<K> + PartialOrd<K> { if *resource >= cost { *resource -= cost; true } else { false } }