Skip to content

Latest commit

 

History

16 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Folder Package Documentation Build

The package allows for scanning directories in parallel.

Examples

Synchronously:

use std::path::{Path, PathBuf};

use folder::scan;

let filter = |path: &Path| path.ends_with(".rs");
let map = |path: PathBuf, _| path.metadata().unwrap().len();
let fold = |sum, value| sum + value;
let _ = scan("src", filter, map, (), None).fold(0, fold);

Asynchronously:

use std::path::{Path, PathBuf};

use folder::asynchronous::scan;
use futures::stream::StreamExt;

let filter = |path: &Path| path.ends_with(".rs");
let map = |path: PathBuf, _| async move { path.metadata().unwrap().len() };
let fold = |sum, value| async move { sum + value };
let _ = scan("src", filter, map, (), None).fold(0, fold).await;

Contribution

Your contribution is highly appreciated. Do not hesitate to open an issue or a pull request. Note that any contribution submitted for inclusion in the project will be licensed according to the terms given in LICENSE.md.

About

Scanning directories in parallel

Resources

Stars

3 stars

Watchers

0 watching

Forks

Used by

Contributors

Languages