feat: improve wfassoc-exec

This commit is contained in:
2026-04-21 16:30:25 +08:00
parent 3e588f0ac9
commit fc2097560c
4 changed files with 164 additions and 102 deletions

View File

@@ -1,37 +1,11 @@
pub(crate) mod manifest;
pub(crate) mod cli;
pub(crate) mod manifest;
pub(crate) mod runner;
use std::path::Path;
use std::process;
use thiserror::Error as TeError;
/// All errors occurs in this executable.
#[derive(TeError, Debug)]
enum Error {
/// Error when parsing manifest TOML file.
#[error("{0}")]
ParseManifest(#[from] manifest::ParseManifestError),
/// Error when parsing manifest into schema.
#[error("{0}")]
ParseSchema(#[from] manifest::ParseSchemaError),
}
/// Result type used in this executable.
type Result<T> = std::result::Result<T, Error>;
fn runner() -> Result<()> {
let mf = manifest::Manifest::from_file(Path::new(r#"D:\Repo\wfassoc\example\manifest\ppic.toml"#))?;
//let mf = raw_mf.to_checked()?;
println!("{:?}", mf);
Ok(())
}
fn main() {
//let cli = cli::parse();
runner().unwrap_or_else(|e| {
let cli = cli::parse();
runner::run(cli).unwrap_or_else(|e| {
eprintln!("Runtime error: {}.", e);
process::exit(1)
std::process::exit(1)
});
}