Or

Trait Or 

Source
pub trait Or {
    type Type;

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

Bitwise “or” with the current value.

Required Associated Types§

Source

type Type

The underlying type

Required Methods§

Source

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

Bitwise “or” with the current value.

Performs a bitwise “or” operation on 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(0b101101);
assert_eq!(fetch::Or::fetch_or(&foo, 0b110011, Ordering::SeqCst), 0b101101);
assert_eq!(Atomic::load(&foo, Ordering::SeqCst), 0b111111);

Implementations on Foreign Types§

Source§

impl Or for AtomicBool

Source§

type Type = bool

Source§

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

Source§

impl Or for AtomicI8

Source§

type Type = i8

Source§

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

Source§

impl Or for AtomicI16

Source§

type Type = i16

Source§

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

Source§

impl Or for AtomicI32

Source§

type Type = i32

Source§

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

Source§

impl Or for AtomicI64

Source§

type Type = i64

Source§

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

Source§

impl Or for AtomicIsize

Source§

type Type = isize

Source§

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

Source§

impl Or for AtomicU8

Source§

type Type = u8

Source§

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

Source§

impl Or for AtomicU16

Source§

type Type = u16

Source§

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

Source§

impl Or for AtomicU32

Source§

type Type = u32

Source§

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

Source§

impl Or for AtomicU64

Source§

type Type = u64

Source§

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

Source§

impl Or for AtomicUsize

Source§

type Type = usize

Source§

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

Implementors§