dyn_fs

Crates.iodyn_fs
lib.rsdyn_fs
version0.0.7
created_at2025-05-09 00:49:29.325441+00
updated_at2025-05-09 04:07:38.582398+00
descriptionAbstraction for the std::fs stdlib
homepage
repositoryhttps://github.com/alshdavid/dyn-fs
max_upload_size
id1666016
size18,759
David Alsh (alshdavid)

documentation

README

Abstract FS API for Rust

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);
}
Commit count: 1

cargo fmt