MCPcopy Create free account
hub / github.com/chyyuu/os_kernel_lab / read_all

Method read_all

os/src/fs/inode.rs:30–43  ·  view source on GitHub ↗
(&self)

Source from the content-addressed store, hash-verified

28 }
29 }
30 pub fn read_all(&self) -> Vec<u8> {
31 let mut inner = self.inner.exclusive_access();
32 let mut buffer = [0u8; 512];
33 let mut v: Vec<u8> = Vec::new();
34 loop {
35 let len = inner.inode.read_at(inner.offset, &mut buffer);
36 if len == 0 {
37 break;
38 }
39 inner.offset += len;
40 v.extend_from_slice(&buffer[..len]);
41 }
42 v
43 }
44}
45
46lazy_static! {

Callers 1

sys_execFunction · 0.80

Calls 2

exclusive_accessMethod · 0.80
read_atMethod · 0.45

Tested by

no test coverage detected