Trait drone_core::reg::WRegAtomic[][src]

pub trait WRegAtomic<'a, T: RegAtomic>: WReg<T> + RegRef<'a, T> {
    fn store<F>(&'a self, f: F)
    where
        F: for<'b> FnOnce(&'b mut Self::Hold) -> &'b mut Self::Hold
;
fn store_reg<F>(&'a self, f: F)
    where
        F: for<'b> FnOnce(&'b Self, &'b mut Self::Val)
;
fn store_val(&self, val: Self::Val);
fn store_bits(&self, bits: <Self::Val as Bitfield>::Bits);
fn reset(&'a self); }

Atomic operations for writable register.

Required methods

fn store<F>(&'a self, f: F) where
    F: for<'b> FnOnce(&'b mut Self::Hold) -> &'b mut Self::Hold
[src]

Passes the reset value to the closure f, then writes the result of the closure into the register memory.

See also store_reg, store_val, store_bits.

fn store_reg<F>(&'a self, f: F) where
    F: for<'b> FnOnce(&'b Self, &'b mut Self::Val), 
[src]

Passes a reference to this register token and the reset value to the closure f, then writes the modified value into the register memory.

See also store, store_val, store_bits.

fn store_val(&self, val: Self::Val)[src]

Writes an opaque value val into the register memory.

See also store, store_bits.

fn store_bits(&self, bits: <Self::Val as Bitfield>::Bits)[src]

Writes raw bits into the register memory.

See also store, store_val.

fn reset(&'a self)[src]

Writes the reset value into the register memory.

Loading content...

Implementors

impl<'a, T, R> WRegAtomic<'a, T> for R where
    T: RegAtomic,
    R: WReg<T> + RegRef<'a, T>,
    R::Val: Bitfield
[src]

Loading content...