seekr_code/scanner/mod.rs
1//! File scanner module.
2//!
3//! Responsible for parallel file tree traversal, file filtering,
4//! and file system watching for incremental updates.
5
6pub mod filter;
7pub mod walker;
8pub mod watcher;
9
10use std::path::PathBuf;
11use std::time::SystemTime;
12
13/// A single scanned file entry.
14#[derive(Debug, Clone)]
15pub struct ScanEntry {
16 /// Absolute path to the file.
17 pub path: PathBuf,
18
19 /// File size in bytes.
20 pub size: u64,
21
22 /// Last modification time.
23 pub modified: Option<SystemTime>,
24}
25
26/// Result of scanning a directory tree.
27#[derive(Debug)]
28pub struct ScanResult {
29 /// List of scanned file entries.
30 pub entries: Vec<ScanEntry>,
31
32 /// Number of files skipped by filters.
33 pub skipped: usize,
34
35 /// Total scan duration.
36 pub duration: std::time::Duration,
37}