Trait clap::Args

source ·
pub trait Args: FromArgMatches + Sized {
    fn augment_args(cmd: Command) -> Command;
    fn augment_args_for_update(cmd: Command) -> Command;

    fn group_id() -> Option<Id> { ... }
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:

  • #[command(flatten)] args: ChildArgs: Attribute can only be used with struct fields that impl Args.
  • Variant(ChildArgs): No attribute is used with enum variants that impl Args.

See the derive reference for attributes and best practices.

NOTE: Deriving requires the derive feature flag


struct Args {
   logging: LogArgs,

struct LogArgs {
   #[arg(long, short = 'v', action = clap::ArgAction::Count)]
   verbose: u8,

Required Methods§

Append to Command so it can instantiate Self.

See also CommandFactory.

Append to Command so it can update self.

This is used to implement #[command(flatten)]

See also CommandFactory.

Provided Methods§

Report the ArgGroup::id for this set of arguments

Implementations on Foreign Types§