eu4save 0.8.2

Ergonomically work with all EU4 saves (ironman and multiplayer)
Documentation
use std::{env, error::Error, io::Read};

mod csv;
mod debug_save;
mod deducer;
mod fmt;
mod json;
mod melt;

fn main() -> Result<(), Box<dyn Error>> {
    let args: Vec<String> = env::args().collect();
    let stdin = std::io::stdin();
    let mut lock = stdin.lock();
    let mut buf = Vec::new();
    lock.read_to_end(&mut buf)?;

    match args[1].as_str() {
        "csv" => csv::run(&buf),
        "debug" => debug_save::run(&buf),
        "deducer" => deducer::run(&buf),
        "fmt" => fmt::run(&buf),
        "json" => json::run(&buf),
        "melt" => melt::run(&buf),
        x => panic!("unrecognized argument: {}", x),
    }?;

    Ok(())
}