index : smol-guess.git

ascending towards madness

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

use smolguess::{
    core::{LanguageDefinition, LanguageDefinitions},
    repository,
};

fn main() {
    let args: Vec<String> = env::args().collect();
    if args.len() < 2 || args[1].is_empty() {
        eprintln!("Usage: {} <path_to_bare_repository>", args[0]);
        std::process::exit(1);
    }

    let files = repository::get_bare_repository_files(PathBuf::from(&args[1]));

    println!("{:?}", files);
    let definitions = LanguageDefinitions::default().load_builtins();

    for file in files {
        println!(
            "{:?}",
            definitions.identify_file(file.clone()).unwrap_or_else(|| {
                let extension = file
                    .extension()
                    .unwrap_or(file.file_name().unwrap_or_default())
                    .to_string_lossy()
                    .to_string()
                    .to_lowercase();

                LanguageDefinition::new("Unknown", &extension)
            })
        );
    }
}