MCPcopy Create free account
hub / github.com/f0rr0/oliphaunt / read_dir

Method read_dir

src/pglite/sync_host_fs.rs:54–76  ·  view source on GitHub ↗
(&self, path: &Path)

Source from the content-addressed store, hash-verified

52 }
53
54 fn read_dir(&self, path: &Path) -> virtual_fs::Result<ReadDir> {
55 let path = self.prepare_path(path)?;
56 let mut data = fs::read_dir(path)?
57 .map(|entry| {
58 let entry = entry?;
59 let path = entry
60 .path()
61 .strip_prefix(&self.root)
62 .map_err(|_| io::Error::from(io::ErrorKind::InvalidData))?
63 .to_owned();
64 let path = Path::new("/").join(path);
65 Ok(DirEntry {
66 path,
67 metadata: entry
68 .metadata()
69 .map(metadata_from_std)
70 .map_err(FsError::from),
71 })
72 })
73 .collect::<std::result::Result<Vec<_>, io::Error>>()?;
74 data.sort_by(|a, b| a.path.file_name().cmp(&b.path.file_name()));
75 Ok(ReadDir::new(data))
76 }
77
78 fn create_dir(&self, path: &Path) -> virtual_fs::Result<()> {
79 let path = self.prepare_path(path)?;

Callers 1

init_source_checkoutFunction · 0.45

Calls 4

prepare_pathMethod · 0.80
pathMethod · 0.45
joinMethod · 0.45
metadataMethod · 0.45

Tested by

no test coverage detected