ciri_toolkit/cli/simulator.rs
1//! CLI entry point for the `ciri-simulator` development binary.
2//!
3//! The simulator is intentionally separated from the user-facing `ciri`
4//! pipeline. This module only parses command-line options and prints the stable
5//! run summary; generation logic lives in `crate::simulator`.
6
7use anyhow::Result;
8use clap::Parser;
9
10use crate::simulator::{run, SimulateArgs};
11
12/// Parses simulator arguments, runs the generator, and prints its summary.
13///
14/// Keeping this wrapper thin ensures tests can call `simulator::run` directly
15/// while the binary exposes the same argument contract to development scripts.
16pub fn main() -> Result<()> {
17 let summary = run(SimulateArgs::parse())?;
18 eprintln!("{summary}");
19 Ok(())
20}