pub mod discovery;
pub mod index;
pub use discovery::{discover_sessions, SessionFile};
pub use index::{GlobalAnalytics, ProjectAnalytics, ProjectStats, SessionIndex};
use crate::error::Result;
pub fn initialize_index() -> Result<usize> {
let sessions = discover_sessions()?;
let mut index = SessionIndex::new()?;
let count = index.index_all(&sessions)?;
Ok(count)
}
#[allow(dead_code)]
pub fn refresh_index() -> Result<(usize, usize)> {
let mut index = SessionIndex::new()?;
let removed = index.prune_missing()?;
let sessions = discover_sessions()?;
let indexed = index.index_all(&sessions)?;
Ok((indexed, removed))
}