MCPcopy Index your code
hub / github.com/explodingcamera/tinywasm / fill

Method fill

crates/tinywasm/src/store/table.rs:41–50  ·  view source on GitHub ↗
(&mut self, func_addrs: &[u32], addr: usize, len: usize, val: TableElement)

Source from the content-addressed store, hash-verified

39 }
40
41 pub(crate) fn fill(&mut self, func_addrs: &[u32], addr: usize, len: usize, val: TableElement) -> Result<(), Trap> {
42 let val = val.map(|addr| self.resolve_func_ref(func_addrs, addr));
43 let end = addr.checked_add(len).ok_or_else(|| self.trap_oob(addr, len))?;
44 if end > self.elements.len() {
45 return Err(self.trap_oob(addr, len));
46 }
47
48 self.elements[addr..end].fill(val);
49 Ok(())
50 }
51
52 pub(crate) fn get(&self, addr: TableAddr) -> Result<&TableElement, Trap> {
53 self.elements.get(addr as usize).ok_or(Trap::TableOutOfBounds {

Callers 2

exec_memory_fill_implMethod · 0.45
exec_table_fillMethod · 0.45

Calls 4

mapMethod · 0.80
resolve_func_refMethod · 0.80
trap_oobMethod · 0.80
lenMethod · 0.45

Tested by

no test coverage detected