Trait AtomicNumeric

Source
pub trait AtomicNumeric<T>: Atomic<T> {
    // Required methods
    fn fetch_add(&self, val: T, order: Ordering) -> T;
    fn fetch_sub(&self, val: T, order: Ordering) -> T;
}
Expand description

Trait describing structs that implement atomic integer operations.

Makes generic containers a little easier.

Required Methods§

Source

fn fetch_add(&self, val: T, order: Ordering) -> T

Source

fn fetch_sub(&self, val: T, order: Ordering) -> T

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl AtomicNumeric<i8> for AtomicI8

Source§

fn fetch_add(&self, val: i8, order: Ordering) -> i8

Source§

fn fetch_sub(&self, val: i8, order: Ordering) -> i8

Source§

impl AtomicNumeric<i16> for AtomicI16

Source§

fn fetch_add(&self, val: i16, order: Ordering) -> i16

Source§

fn fetch_sub(&self, val: i16, order: Ordering) -> i16

Source§

impl AtomicNumeric<i32> for AtomicI32

Source§

fn fetch_add(&self, val: i32, order: Ordering) -> i32

Source§

fn fetch_sub(&self, val: i32, order: Ordering) -> i32

Source§

impl AtomicNumeric<i64> for AtomicI64

Source§

fn fetch_add(&self, val: i64, order: Ordering) -> i64

Source§

fn fetch_sub(&self, val: i64, order: Ordering) -> i64

Source§

impl AtomicNumeric<isize> for AtomicIsize

Source§

fn fetch_add(&self, val: isize, order: Ordering) -> isize

Source§

fn fetch_sub(&self, val: isize, order: Ordering) -> isize

Source§

impl AtomicNumeric<u8> for AtomicU8

Source§

fn fetch_add(&self, val: u8, order: Ordering) -> u8

Source§

fn fetch_sub(&self, val: u8, order: Ordering) -> u8

Source§

impl AtomicNumeric<u16> for AtomicU16

Source§

fn fetch_add(&self, val: u16, order: Ordering) -> u16

Source§

fn fetch_sub(&self, val: u16, order: Ordering) -> u16

Source§

impl AtomicNumeric<u32> for AtomicU32

Source§

fn fetch_add(&self, val: u32, order: Ordering) -> u32

Source§

fn fetch_sub(&self, val: u32, order: Ordering) -> u32

Source§

impl AtomicNumeric<u64> for AtomicU64

Source§

fn fetch_add(&self, val: u64, order: Ordering) -> u64

Source§

fn fetch_sub(&self, val: u64, order: Ordering) -> u64

Source§

impl AtomicNumeric<usize> for AtomicUsize

Source§

fn fetch_add(&self, val: usize, order: Ordering) -> usize

Source§

fn fetch_sub(&self, val: usize, order: Ordering) -> usize

Implementors§