MCPcopy Create free account
hub / github.com/Starry-OS/StarryOS / read_at

Method read_at

api/src/vfs/tmp.rs:304–313  ·  view source on GitHub ↗
(&self, buf: &mut [u8], offset: u64)

Source from the content-addressed store, hash-verified

302
303impl FileNodeOps for MemoryNode {
304 fn read_at(&self, buf: &mut [u8], offset: u64) -> VfsResult<usize> {
305 let file = self.inode.as_file()?;
306 if let Some(symlink) = file.symlink.lock().as_ref() {
307 assert_eq!(offset, 0);
308 let len = buf.len().min(symlink.len());
309 buf[..len].copy_from_slice(&symlink.as_bytes()[..len]);
310 return Ok(len);
311 }
312 unreachable!("page cache should handle reading");
313 }
314
315 fn write_at(&self, _buf: &[u8], _offset: u64) -> VfsResult<usize> {
316 unreachable!("page cache should handle writing");

Callers 5

sys_getrandomFunction · 0.45
sys_pread64Function · 0.45
sys_preadv2Function · 0.45
sys_pwritev2Function · 0.45
readMethod · 0.45

Calls 2

as_fileMethod · 0.80
lenMethod · 0.45

Tested by

no test coverage detected