pub trait Args: FromArgMatches + Sized {
fn augment_args(cmd: Command<'_>) -> Command<'_>;
fn augment_args_for_update(cmd: Command<'_>) -> Command<'_>;
}Expand description
Parse a set of arguments into a user-defined container.
Implementing this trait lets a parent container delegate argument parsing behavior to Self.
with:
#[clap(flatten)] args: ChildArgs: Attribute can only be used with struct fields that implArgs.Variant(ChildArgs): No attribute is used with enum variants that implArgs.
See the derive reference for attributes and best practices.
NOTE: Deriving requires the [derive feature flag][crate::_features]
Example
#[derive(clap::Parser)]
struct Args {
#[clap(flatten)]
logging: LogArgs,
}
#[derive(clap::Args)]
struct LogArgs {
#[clap(long, short = 'v', parse(from_occurrences))]
verbose: i8,
}Required methods
fn augment_args(cmd: Command<'_>) -> Command<'_>
fn augment_args(cmd: Command<'_>) -> Command<'_>
Append to Command so it can instantiate Self.
See also CommandFactory.
fn augment_args_for_update(cmd: Command<'_>) -> Command<'_>
fn augment_args_for_update(cmd: Command<'_>) -> Command<'_>
Append to Command so it can update self.
This is used to implement #[clap(flatten)]
See also CommandFactory.
