rgen_cli_lib/cmds/
completion.rs

1use super::CompletionSubcommand;
2use clap::CommandFactory;
3use clap_complete::{
4    generate,
5    shells::{Bash, Fish, Zsh},
6};
7
8pub fn run(sub: &CompletionSubcommand) -> rgen_utils::error::Result<()> {
9    let mut app = crate::Cli::command();
10    match sub {
11        CompletionSubcommand::Bash => generate(Bash, &mut app, "rgen", &mut std::io::stdout()),
12        CompletionSubcommand::Zsh => generate(Zsh, &mut app, "rgen", &mut std::io::stdout()),
13        CompletionSubcommand::Fish => generate(Fish, &mut app, "rgen", &mut std::io::stdout()),
14    }
15    Ok(())
16}