(&mut self, dst: usize, src: &[TableElement])
| 58 | } |
| 59 | |
| 60 | pub(crate) fn copy_from_slice(&mut self, dst: usize, src: &[TableElement]) -> Result<(), Trap> { |
| 61 | let end = dst.checked_add(src.len()).ok_or_else(|| self.trap_oob(dst, src.len()))?; |
| 62 | |
| 63 | if end > self.elements.len() { |
| 64 | return Err(self.trap_oob(dst, src.len())); |
| 65 | } |
| 66 | |
| 67 | self.elements[dst..end].copy_from_slice(src); |
| 68 | Ok(()) |
| 69 | } |
| 70 | |
| 71 | pub(crate) fn load(&self, addr: usize, len: usize) -> Result<&[TableElement], Trap> { |
| 72 | let Some(end) = addr.checked_add(len) else { |
no test coverage detected