#[allow(dead_code)] #[path = "src/model.rs"] mod model; include!("src/cli.rs"); use clap::{CommandFactory, ValueEnum}; use clap_complete::{generate_to, Shell}; use std::{env, io::Error}; fn main() -> Result<(), Error> { let outdir = env::var_os("SHELL_COMPLETIONS_DIR") .or_else(|| env::var_os("OUT_DIR")); let Some(outdir) = outdir else { return Ok(()); }; let mut cmd = Cli::command(); for shell in Shell::value_variants() { let path = generate_to(*shell, &mut cmd, env!("CARGO_PKG_NAME"), &outdir)?; println!("cargo:warning=completion file is generated: {path:?}"); } Ok(()) }