ribes the memory ordering of this operation. All ordering modes are possible. Note that using [`Acquire`] makes the store part of this operation [`Relaxed`], and using [`Release`] makes the load part [`Relaxed`]. # Examples ``` use portable_atomic::{AtomicUsize, Ordering}; let foo = AtomicUsize::new(5); assert_eq!(foo.fetch_neg(Ordering::Relaxed), 5); assert_eq!(foo.load(Ordering::Relaxed), 5_usize.wrapping_neg()); assert_eq!(foo.fetch_neg(Ordering::Relaxed), 5_usize.wrapping_neg()); assert_eq!(foo.load(Ordering::Relaxed), 5); ```