Skip to content

Commit

Permalink
fix(derive): Avoid arg reassignment in gen_augment
Browse files Browse the repository at this point in the history
  • Loading branch information
rkrasiuk committed Feb 27, 2023
1 parent cdb33b6 commit c1caf46
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 20 deletions.
14 changes: 4 additions & 10 deletions clap_derive/src/derives/args.rs
Expand Up @@ -341,16 +341,10 @@ pub fn gen_augment(
#deprecations

#[allow(deprecated)]
let arg = clap::Arg::new(#id)
#implicit_methods;

let arg = arg
#explicit_methods;

let arg = arg
#override_methods;

arg
clap::Arg::new(#id)
#implicit_methods
#explicit_methods
#override_methods
});
})
}
Expand Down
17 changes: 7 additions & 10 deletions clap_derive/src/derives/subcommand.rs
Expand Up @@ -255,13 +255,11 @@ fn gen_augment(
let subcommand = quote! {
let #app_var = #app_var.subcommand({
#deprecations;
let #subcommand_var = clap::Command::new(#name);
let #subcommand_var = #subcommand_var
let #subcommand_var = clap::Command::new(#name)
.subcommand_required(true)
.arg_required_else_help(true);
let #subcommand_var = #subcommand_var #initial_app_methods;
let #subcommand_var = #arg_block;
#subcommand_var #final_from_attrs #override_methods
.arg_required_else_help(true)
#initial_app_methods;
#arg_block #final_from_attrs #override_methods
});
};
Some(subcommand)
Expand All @@ -283,13 +281,12 @@ fn gen_augment(
args::gen_augment(&fields, &subcommand_var, item, override_required)
}
Unit => {
let arg_block = quote!( #subcommand_var );
let initial_app_methods = item.initial_top_level_methods();
let final_from_attrs = item.final_top_level_methods();
quote! {
let #subcommand_var = #subcommand_var #initial_app_methods;
let #subcommand_var = #arg_block;
#subcommand_var #final_from_attrs
#subcommand_var
#initial_app_methods
#final_from_attrs
}
},
Unnamed(FieldsUnnamed { ref unnamed, .. }) if unnamed.len() == 1 => {
Expand Down

0 comments on commit c1caf46

Please sign in to comment.