MCPcopy Create free account
hub / github.com/bendudson/EuraliOS / read

Method read

ramdisk/src/main.rs:33–42  ·  view source on GitHub ↗
(&self, start: usize, buffer: &mut [u8])

Source from the content-addressed store, hash-verified

31 self.data.len()
32 }
33 fn read(&self, start: usize, buffer: &mut [u8]) -> Result<usize, syscalls::SyscallError> {
34 let end = cmp::min(start + buffer.len(), self.data.len());
35 if start >= end {
36 return Err(syscalls::SYSCALL_ERROR_NO_DATA);
37 }
38 let size = end - start;
39 println!("[ramdisk] Reading {} bytes", size);
40 buffer[..size].copy_from_slice(&self.data[start..end]);
41 Ok(size)
42 }
43 fn write(&mut self, start: usize, buffer: &[u8]) -> Result<usize, syscalls::SyscallError> {
44 println!("[ramdisk] Writing {} bytes", buffer.len());
45 self.data.extend_from_slice(buffer);

Callers

nothing calls this directly

Calls 1

lenMethod · 0.45

Tested by

no test coverage detected