Trait msp430_atomic::AtomicOperations [−][src]
pub trait AtomicOperations {
unsafe fn atomic_store(dst: *mut Self, val: Self);
unsafe fn atomic_load(dst: *const Self) -> Self;
unsafe fn atomic_add(dst: *mut Self, val: Self);
unsafe fn atomic_sub(dst: *mut Self, val: Self);
unsafe fn atomic_and(dst: *mut Self, val: Self);
unsafe fn atomic_clear(dst: *mut Self, val: Self);
unsafe fn atomic_or(dst: *mut Self, val: Self);
unsafe fn atomic_xor(dst: *mut Self, val: Self);
}Expand description
Atomic arithmetic and bitwise operations implemented for numerical types. Each operation is implemented with a single assembly instruction.
Required methods
unsafe fn atomic_store(dst: *mut Self, val: Self)[src]
Expand description
Store value into destination pointee.
unsafe fn atomic_load(dst: *const Self) -> Self[src]
Expand description
Read value from destination pointee.
unsafe fn atomic_add(dst: *mut Self, val: Self)[src]
Expand description
Add value to destination pointee. Result may wrap around.
unsafe fn atomic_sub(dst: *mut Self, val: Self)[src]
Expand description
Subtract value from destination pointee. Result may wrap around.
unsafe fn atomic_and(dst: *mut Self, val: Self)[src]
Expand description
Clear all bits in destination pointee that are zeroed in value.
unsafe fn atomic_clear(dst: *mut Self, val: Self)[src]
Expand description
Clear all bits in destination pointee that are set in value
unsafe fn atomic_or(dst: *mut Self, val: Self)[src]
Expand description
Set all bits in destination pointee that are set in value.
unsafe fn atomic_xor(dst: *mut Self, val: Self)[src]
Expand description
Toggle all bits in destination pointee that are set in value.
Implementors
impl AtomicOperations for i8[src]
impl AtomicOperations for i8[src]unsafe fn atomic_store(dst: *mut Self, val: Self)[src]
unsafe fn atomic_load(dst: *const Self) -> Self[src]
unsafe fn atomic_add(dst: *mut Self, val: Self)[src]
unsafe fn atomic_sub(dst: *mut Self, val: Self)[src]
unsafe fn atomic_and(dst: *mut Self, val: Self)[src]
unsafe fn atomic_clear(dst: *mut Self, val: Self)[src]
unsafe fn atomic_or(dst: *mut Self, val: Self)[src]
unsafe fn atomic_xor(dst: *mut Self, val: Self)[src]
impl AtomicOperations for i16[src]
impl AtomicOperations for i16[src]unsafe fn atomic_store(dst: *mut Self, val: Self)[src]
unsafe fn atomic_load(dst: *const Self) -> Self[src]
unsafe fn atomic_add(dst: *mut Self, val: Self)[src]
unsafe fn atomic_sub(dst: *mut Self, val: Self)[src]
unsafe fn atomic_and(dst: *mut Self, val: Self)[src]
unsafe fn atomic_clear(dst: *mut Self, val: Self)[src]
unsafe fn atomic_or(dst: *mut Self, val: Self)[src]
unsafe fn atomic_xor(dst: *mut Self, val: Self)[src]
impl AtomicOperations for isize[src]
impl AtomicOperations for isize[src]unsafe fn atomic_store(dst: *mut Self, val: Self)[src]
unsafe fn atomic_load(dst: *const Self) -> Self[src]
unsafe fn atomic_add(dst: *mut Self, val: Self)[src]
unsafe fn atomic_sub(dst: *mut Self, val: Self)[src]
unsafe fn atomic_and(dst: *mut Self, val: Self)[src]
unsafe fn atomic_clear(dst: *mut Self, val: Self)[src]
unsafe fn atomic_or(dst: *mut Self, val: Self)[src]
unsafe fn atomic_xor(dst: *mut Self, val: Self)[src]
impl AtomicOperations for u8[src]
impl AtomicOperations for u8[src]unsafe fn atomic_store(dst: *mut Self, val: Self)[src]
unsafe fn atomic_load(dst: *const Self) -> Self[src]
unsafe fn atomic_add(dst: *mut Self, val: Self)[src]
unsafe fn atomic_sub(dst: *mut Self, val: Self)[src]
unsafe fn atomic_and(dst: *mut Self, val: Self)[src]
unsafe fn atomic_clear(dst: *mut Self, val: Self)[src]
unsafe fn atomic_or(dst: *mut Self, val: Self)[src]
unsafe fn atomic_xor(dst: *mut Self, val: Self)[src]
impl AtomicOperations for u16[src]
impl AtomicOperations for u16[src]unsafe fn atomic_store(dst: *mut Self, val: Self)[src]
unsafe fn atomic_load(dst: *const Self) -> Self[src]
unsafe fn atomic_add(dst: *mut Self, val: Self)[src]
unsafe fn atomic_sub(dst: *mut Self, val: Self)[src]
unsafe fn atomic_and(dst: *mut Self, val: Self)[src]
unsafe fn atomic_clear(dst: *mut Self, val: Self)[src]
unsafe fn atomic_or(dst: *mut Self, val: Self)[src]
unsafe fn atomic_xor(dst: *mut Self, val: Self)[src]
impl AtomicOperations for usize[src]
impl AtomicOperations for usize[src]