gen_file/
folder.rs

1use std::fs;
2use std::path::PathBuf;
3use crate::error::Error;
4
5pub fn get_folder_filename_list(folder_name: &str) -> Vec<String> {
6    let paths: fs::ReadDir = fs::read_dir(folder_name).unwrap();
7    let mut file_name_list: Vec<String> = Vec::new();
8
9    for path in paths {
10        file_name_list.push(path.unwrap().path().display().to_string());
11    }
12
13    return file_name_list
14}
15
16pub fn create(path: &String) -> Result<(), Error> {
17    fs::create_dir_all(path)?;
18    Ok(())
19}
20
21pub fn remove_if_exists(path: &String) -> Result<(), Error> {
22    if exists(path)? {
23        fs::remove_dir_all(path)?;
24    }
25
26    Ok(())
27}
28
29pub fn exists(path: &String) -> Result<bool, Error> {
30    let path_buf: PathBuf = PathBuf::from(path);
31    return Ok(path_buf.exists());
32}
33
34#[cfg(test)]
35#[path = "../tests/unit_tests/folder.rs"]
36pub mod test;