From 5a27c1fff017f73b41267873ecb01da253030e9f Mon Sep 17 00:00:00 2001 From: Benedikt Peetz Date: Mon, 6 May 2024 18:09:03 +0200 Subject: feat(pkgs/lf-make-map): Implement all needed details to produce first mappings The only bug left right know, is that multiple same mappings can be generated because of the ways the types interact with each other. --- sys/nixpkgs/pkgs/lf-make-map/src/generator/mod.rs | 51 ----------------------- 1 file changed, 51 deletions(-) delete mode 100644 sys/nixpkgs/pkgs/lf-make-map/src/generator/mod.rs (limited to 'sys/nixpkgs/pkgs/lf-make-map/src/generator/mod.rs') diff --git a/sys/nixpkgs/pkgs/lf-make-map/src/generator/mod.rs b/sys/nixpkgs/pkgs/lf-make-map/src/generator/mod.rs deleted file mode 100644 index c03b33dc..00000000 --- a/sys/nixpkgs/pkgs/lf-make-map/src/generator/mod.rs +++ /dev/null @@ -1,51 +0,0 @@ -use std::path::PathBuf; - -use anyhow::{Context, Result}; -use log::trace; -use walkdir::{DirEntry, WalkDir}; - -use crate::mapping::{map_tree::MappingTree, MapKey, Mapping}; - -pub struct MappingsGenerator { - mappings: MappingTree, - paths_to_process: Vec, -} - -fn is_dir(entry: &DirEntry) -> bool { - entry.file_type().is_dir() -} - -impl MappingsGenerator { - pub async fn new( - directories_to_scan: Vec, - max_depth: usize, - home_path: PathBuf, - ) -> Result { - let mut mappings = MappingTree::new(); - - for dir in directories_to_scan { - for dir2 in WalkDir::new(&dir) - .max_depth(max_depth) - .into_iter() - .filter_entry(|e| is_dir(e)) - { - let directory = - dir2.with_context(|| format!("Failed to read dir ('{}')", &dir.display()))?; - - trace!("Processed '{}'..", directory.path().display()); - - let mapping = Mapping::new(&home_path, directory.path().to_path_buf()); - let mapping_key = mapping.key.clone(); - mappings.insert(&mapping_key, mapping).with_context(|| { - format!( - "Failed to insert '{}' for path: '{}'\nMapTree is now: \n{}", - MapKey::display(&mapping_key), - directory.path().display(), - mappings, - ) - })?; - } - } - todo!() - } -} -- cgit 1.4.1