Trait rsim::processor::elements::memory::Memory [−][src]
pub trait Memory<TAddr = u64>: MemoryOf<u8, TAddr> + MemoryOf<u16, TAddr> + MemoryOf<u32, TAddr> + MemoryOf<u64, TAddr> { fn range(&self) -> Range<usize>; fn as_any(&self) -> &dyn Any; fn load_u8(&mut self, addr: TAddr) -> MemoryResult<u8> { ... } fn load_u16(&mut self, addr: TAddr) -> MemoryResult<u16> { ... } fn load_u32(&mut self, addr: TAddr) -> MemoryResult<u32> { ... } fn load_u64(&mut self, addr: TAddr) -> MemoryResult<u64> { ... } fn store_u8(&mut self, addr: TAddr, val: u8) -> MemoryResult<()> { ... } fn store_u16(&mut self, addr: TAddr, val: u16) -> MemoryResult<()> { ... } fn store_u32(&mut self, addr: TAddr, val: u32) -> MemoryResult<()> { ... } fn store_u64(&mut self, addr: TAddr, val: u64) -> MemoryResult<()> { ... } }
Public trait which supplies {load,store}_u{8,16,32,64} functions.
Required methods
fn range(&self) -> Range<usize>
[src]
The mapped address range for this Memory. All addresses passed to read,write must be within this range. Guaranteed to be at least 4 bytes in size, both ends will be 4-byte aligned.
fn as_any(&self) -> &dyn Any
[src]
Provided methods
fn load_u8(&mut self, addr: TAddr) -> MemoryResult<u8>
[src]
fn load_u16(&mut self, addr: TAddr) -> MemoryResult<u16>
[src]
fn load_u32(&mut self, addr: TAddr) -> MemoryResult<u32>
[src]
fn load_u64(&mut self, addr: TAddr) -> MemoryResult<u64>
[src]
fn store_u8(&mut self, addr: TAddr, val: u8) -> MemoryResult<()>
[src]
fn store_u16(&mut self, addr: TAddr, val: u16) -> MemoryResult<()>
[src]
fn store_u32(&mut self, addr: TAddr, val: u32) -> MemoryResult<()>
[src]
fn store_u64(&mut self, addr: TAddr, val: u64) -> MemoryResult<()>
[src]
Implementors
impl Memory<u64> for AggregateMemory
[src]
impl Memory<u64> for AggregateMemory
[src]impl Memory<u64> for MemoryBacking
[src]
impl Memory<u64> for MemoryBacking
[src]impl Memory<CcxCap<Cc128>> for CheriAggregateMemory
[src]
impl Memory<CcxCap<Cc128>> for CheriAggregateMemory
[src]Now we’ve defined MemoryOf<u8,u16,u32,u64>, combine them into a single Memory trait