chore(vendor): add anyhow crate
This commit was merged in pull request #68.
This commit is contained in:
108
third_party/crates/clap-4.6.7/src/bin/stdio-fixture.rs
vendored
Normal file
108
third_party/crates/clap-4.6.7/src/bin/stdio-fixture.rs
vendored
Normal file
@@ -0,0 +1,108 @@
|
||||
use clap::{Arg, ArgAction, Command, builder::PossibleValue};
|
||||
|
||||
fn main() {
|
||||
#[allow(unused_mut)]
|
||||
let mut cmd = Command::new("stdio-fixture")
|
||||
.version("1.0")
|
||||
.long_version("1.0 - a2132c")
|
||||
.term_width(0)
|
||||
.max_term_width(0)
|
||||
.arg_required_else_help(true)
|
||||
.subcommand(Command::new("more"))
|
||||
.subcommand(
|
||||
Command::new("test")
|
||||
.visible_alias("do-stuff")
|
||||
.long_about("Subcommand with one visible alias"),
|
||||
)
|
||||
.subcommand(
|
||||
Command::new("test_2")
|
||||
.visible_aliases(["do-other-stuff", "tests"])
|
||||
.about("several visible aliases")
|
||||
.long_about("Subcommand with multiple visible aliases"),
|
||||
)
|
||||
.subcommand(
|
||||
Command::new("test_3")
|
||||
.long_flag("test")
|
||||
.about("several visible long flag aliases")
|
||||
.visible_long_flag_aliases(["testing", "testall", "test_all"]),
|
||||
)
|
||||
.subcommand(
|
||||
Command::new("test_4")
|
||||
.short_flag('t')
|
||||
.about("several visible short flag aliases")
|
||||
.visible_short_flag_aliases(['q', 'w']),
|
||||
)
|
||||
.subcommand(
|
||||
Command::new("test_5")
|
||||
.short_flag('e')
|
||||
.long_flag("test-hdr")
|
||||
.about("all kinds of visible aliases")
|
||||
.visible_aliases(["tests_4k"])
|
||||
.visible_long_flag_aliases(["thetests", "t4k"])
|
||||
.visible_short_flag_aliases(['r', 'y']),
|
||||
)
|
||||
.arg(
|
||||
Arg::new("verbose")
|
||||
.long("verbose")
|
||||
.help("log")
|
||||
.action(ArgAction::SetTrue)
|
||||
.long_help("more log"),
|
||||
)
|
||||
.arg(
|
||||
Arg::new("config")
|
||||
.action(ArgAction::Set)
|
||||
.help("Speed configuration")
|
||||
.short('c')
|
||||
.long("config")
|
||||
.value_name("MODE")
|
||||
.value_parser([
|
||||
PossibleValue::new("fast"),
|
||||
PossibleValue::new("slow").help("slower than fast"),
|
||||
PossibleValue::new("secret speed").hide(true),
|
||||
])
|
||||
.default_value("fast"),
|
||||
)
|
||||
.arg(
|
||||
Arg::new("name")
|
||||
.action(ArgAction::Set)
|
||||
.help("App name")
|
||||
.long_help("Set the instance app name")
|
||||
.value_name("NAME")
|
||||
.visible_alias("app-name")
|
||||
.default_value("clap"),
|
||||
)
|
||||
.arg(
|
||||
Arg::new("fruits")
|
||||
.short('f')
|
||||
.visible_short_alias('b')
|
||||
.action(ArgAction::Append)
|
||||
.value_name("FRUITS")
|
||||
.help("List of fruits")
|
||||
.default_values(["apple", "banane", "orange"]),
|
||||
);
|
||||
#[cfg(feature = "env")]
|
||||
{
|
||||
cmd = cmd.arg(
|
||||
Arg::new("env_arg")
|
||||
.help("Read from env var when arg is not present.")
|
||||
.value_name("ENV")
|
||||
.env("ENV_ARG"),
|
||||
);
|
||||
}
|
||||
#[cfg(feature = "color")]
|
||||
{
|
||||
use clap::builder::styling::{AnsiColor, Styles};
|
||||
const STYLES: Styles = Styles::styled()
|
||||
.header(AnsiColor::Green.on_default().bold())
|
||||
.error(AnsiColor::Red.on_default().bold())
|
||||
.usage(AnsiColor::Green.on_default().bold().underline())
|
||||
.literal(AnsiColor::Blue.on_default().bold())
|
||||
.placeholder(AnsiColor::Cyan.on_default())
|
||||
.valid(AnsiColor::Green.on_default())
|
||||
.invalid(AnsiColor::Magenta.on_default().bold())
|
||||
.context(AnsiColor::Yellow.on_default().dimmed())
|
||||
.context_value(AnsiColor::Yellow.on_default().italic());
|
||||
cmd = cmd.styles(STYLES);
|
||||
}
|
||||
cmd.get_matches();
|
||||
}
|
||||
Reference in New Issue
Block a user