Trait utils_atomics::traits::AtomicBitXor
source · pub trait AtomicBitXor<T = <Self as Atomic>::Primitive>: Atomic {
// Required method
fn fetch_xor(&self, val: T, order: Ordering) -> Self::Primitive;
}
Expand description
A trait representing atomic types that support bitwise XOR operations.
Required Methods§
sourcefn fetch_xor(&self, val: T, order: Ordering) -> Self::Primitive
fn fetch_xor(&self, val: T, order: Ordering) -> Self::Primitive
Bitwise “xor” with the current value.
Performs a bitwise “xor” operation on the current value and the argument val
, and
sets the new value to the result.
Returns the previous value.
fetch_xor
takes an Ordering
argument which describes 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
.
Object Safety§
This trait is not object safe.
Implementations on Foreign Types§
source§impl AtomicBitXor for AtomicI8
Available on target_has_atomic="8"
only.
impl AtomicBitXor for AtomicI8
Available on
target_has_atomic="8"
only.source§impl AtomicBitXor for AtomicI16
Available on target_has_atomic="16"
only.
impl AtomicBitXor for AtomicI16
Available on
target_has_atomic="16"
only.source§impl AtomicBitXor for AtomicI32
Available on target_has_atomic="32"
only.
impl AtomicBitXor for AtomicI32
Available on
target_has_atomic="32"
only.source§impl AtomicBitXor for AtomicI64
Available on target_has_atomic="64"
only.
impl AtomicBitXor for AtomicI64
Available on
target_has_atomic="64"
only.source§impl AtomicBitXor for AtomicIsize
Available on target_has_atomic="ptr"
only.
impl AtomicBitXor for AtomicIsize
Available on
target_has_atomic="ptr"
only.source§impl AtomicBitXor for AtomicU8
Available on target_has_atomic="8"
only.
impl AtomicBitXor for AtomicU8
Available on
target_has_atomic="8"
only.source§impl AtomicBitXor for AtomicU16
Available on target_has_atomic="16"
only.
impl AtomicBitXor for AtomicU16
Available on
target_has_atomic="16"
only.source§impl AtomicBitXor for AtomicU32
Available on target_has_atomic="32"
only.
impl AtomicBitXor for AtomicU32
Available on
target_has_atomic="32"
only.source§impl AtomicBitXor for AtomicU64
Available on target_has_atomic="64"
only.
impl AtomicBitXor for AtomicU64
Available on
target_has_atomic="64"
only.source§impl AtomicBitXor for AtomicUsize
Available on target_has_atomic="ptr"
only.
impl AtomicBitXor for AtomicUsize
Available on
target_has_atomic="ptr"
only.