synd_stdx/fs/
mod.rs

1use std::{fs::File, io, path::Path};
2
3pub mod fsimpl;
4
5#[cfg_attr(feature = "mock", mockall::automock)]
6pub trait FileSystem {
7    #[cfg_attr(feature = "mock", mockall::concretize)]
8    fn create_dir_all<P: AsRef<Path>>(&self, path: P) -> io::Result<()>;
9
10    #[cfg_attr(feature = "mock", mockall::concretize)]
11    fn create_file<P: AsRef<Path>>(&self, path: P) -> io::Result<File>;
12
13    #[cfg_attr(feature = "mock", mockall::concretize)]
14    fn open_file<P: AsRef<Path>>(&self, path: P) -> io::Result<File>;
15
16    #[cfg_attr(feature = "mock", mockall::concretize)]
17    fn remove_file<P: AsRef<Path>>(&self, path: P) -> io::Result<()>;
18}