pub trait MemoryWrite {
    // Required methods
    fn write_raw(&mut self, addr: usize, buf: &[u8]) -> MemoryResult<()>;
    fn write<T: Register>(&mut self, data: T::Ty) -> MemoryResult<()>;
    fn set_access_right<T: Register>(&mut self, access_right: AccessRight);
    fn register_observer<T, U>(&mut self, observer: U)
       where T: Register,
             U: MemoryObserver + 'static;
}

Required Methods§

source

fn write_raw(&mut self, addr: usize, buf: &[u8]) -> MemoryResult<()>

source

fn write<T: Register>(&mut self, data: T::Ty) -> MemoryResult<()>

Write data to the register. Since the host side know nothing about Register, this method can be called only from the machine side so access rights are temporarily set to RW.

source

fn set_access_right<T: Register>(&mut self, access_right: AccessRight)

source

fn register_observer<T, U>(&mut self, observer: U)where T: Register, U: MemoryObserver + 'static,

Implementors§