Trait atomic_traits::fetch::Max

source ·
pub trait Max {
    type Type;

    // Required method
    fn fetch_max(&self, val: Self::Type, order: Ordering) -> Self::Type;
}
Expand description

Maximum with the current value.

Required Associated Types§

source

type Type

The underlying type

Required Methods§

source

fn fetch_max(&self, val: Self::Type, order: Ordering) -> Self::Type

Maximum with the current value.

Finds the maximum of the current value and the argument val, and sets the new value to the result.

Returns the previous value.

§Examples
use std::sync::atomic::{AtomicU8, Ordering};
use atomic_traits::{Atomic, fetch};

let foo = AtomicU8::new(23);
assert_eq!(fetch::Max::fetch_max(&foo, 42, Ordering::SeqCst), 23);
assert_eq!(Atomic::load(&foo, Ordering::SeqCst), 42);

Implementations on Foreign Types§

source§

impl Max for AtomicI8

§

type Type = i8

source§

fn fetch_max(&self, val: Self::Type, order: Ordering) -> Self::Type

source§

impl Max for AtomicI16

§

type Type = i16

source§

fn fetch_max(&self, val: Self::Type, order: Ordering) -> Self::Type

source§

impl Max for AtomicI32

§

type Type = i32

source§

fn fetch_max(&self, val: Self::Type, order: Ordering) -> Self::Type

source§

impl Max for AtomicI64

§

type Type = i64

source§

fn fetch_max(&self, val: Self::Type, order: Ordering) -> Self::Type

source§

impl Max for AtomicIsize

§

type Type = isize

source§

fn fetch_max(&self, val: Self::Type, order: Ordering) -> Self::Type

source§

impl Max for AtomicU8

§

type Type = u8

source§

fn fetch_max(&self, val: Self::Type, order: Ordering) -> Self::Type

source§

impl Max for AtomicU16

§

type Type = u16

source§

fn fetch_max(&self, val: Self::Type, order: Ordering) -> Self::Type

source§

impl Max for AtomicU32

§

type Type = u32

source§

fn fetch_max(&self, val: Self::Type, order: Ordering) -> Self::Type

source§

impl Max for AtomicU64

§

type Type = u64

source§

fn fetch_max(&self, val: Self::Type, order: Ordering) -> Self::Type

source§

impl Max for AtomicUsize

§

type Type = usize

source§

fn fetch_max(&self, val: Self::Type, order: Ordering) -> Self::Type

Implementors§