diff options
Diffstat (limited to 'src/main.rs')
-rw-r--r-- | src/main.rs | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/main.rs b/src/main.rs index 2c2f980..ca08fa4 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,8 +1,7 @@ use anyhow::{Context, Result}; use clap::Parser; use figment::providers::{Env, Format, Toml}; -use projectr::{Cli, Config, GitSorter, Projects, Sorter}; -use std::path::PathBuf; +use projectr::{Cli, Config, Project, Search}; #[tracing::instrument] fn main() -> Result<()> { @@ -26,14 +25,14 @@ fn main() -> Result<()> { #[tracing::instrument] pub fn run(config: &Config) -> Result<()> { - let mut projects: Vec<PathBuf> = Projects::from_provider(config) + let mut projects: Vec<Box<dyn Project>> = Search::from_provider(config) .context("Failed to extract paths config")? .collect(); - GitSorter::sort(&mut projects); + projects.sort_unstable_by_key(|p| p.timestamp()); for project in projects { - println!("{}", project.to_string_lossy()) + println!("{}", project.to_path_buf().to_string_lossy()) } Ok(()) |