| Crates.io | dyn_fs |
| lib.rs | dyn_fs |
| version | 0.0.7 |
| created_at | 2025-05-09 00:49:29.325441+00 |
| updated_at | 2025-05-09 04:07:38.582398+00 |
| description | Abstraction for the std::fs stdlib |
| homepage | |
| repository | https://github.com/alshdavid/dyn-fs |
| max_upload_size | |
| id | 1666016 |
| size | 18,759 |
This crate offers a trait that looks exactly like the std::fs interface and supplies implementations for the os filesystem and an in-memory filesystem.
Useful for substituting the FileSystem in tests and benchmarks
use dyn_fs::FileSystem;
use dyn_fs::os::OsFileSystem;
use dyn_fs::mem::MemoryFileSystem;
fn read_file(fs: &dyn FileSystem) {
let contents = fs.read(PathBuf::from("/path/to/file"))?;
println!("{}", contents.len())
}
fn main() {
let os_fs = OsFileSystem::default();
let mem_fs = MemoryFileSystem::default();
read_file(&os_fs);
read_file(&mem_fs);
}