Skip to content

Commit

Permalink
fix(derive): Mark all impls as automatically derived
Browse files Browse the repository at this point in the history
Unsure what all it does.  I removed our `allow`s and we still get lints,
so unsure if its only some that it applies to it.

Inspired by #4951
  • Loading branch information
epage committed Jun 5, 2023
1 parent 50f0e6b commit e7729d1
Show file tree
Hide file tree
Showing 6 changed files with 15 additions and 0 deletions.
2 changes: 2 additions & 0 deletions clap_derive/src/derives/args.rs
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,7 @@ pub fn gen_for_struct(
clippy::suspicious_else_formatting,
clippy::almost_swapped,
)]
#[automatically_derived]
impl #impl_generics clap::FromArgMatches for #item_name #ty_generics #where_clause {
fn from_arg_matches(__clap_arg_matches: &clap::ArgMatches) -> ::std::result::Result<Self, clap::Error> {
Self::from_arg_matches_mut(&mut __clap_arg_matches.clone())
Expand Down Expand Up @@ -134,6 +135,7 @@ pub fn gen_for_struct(
clippy::suspicious_else_formatting,
clippy::almost_swapped,
)]
#[automatically_derived]
impl #impl_generics clap::Args for #item_name #ty_generics #where_clause {
fn group_id() -> Option<clap::Id> {
#group_id
Expand Down
2 changes: 2 additions & 0 deletions clap_derive/src/derives/into_app.rs
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ pub fn gen_for_struct(
clippy::suspicious_else_formatting,
clippy::almost_swapped,
)]
#[automatically_derived]
impl #impl_generics clap::CommandFactory for #item_name #ty_generics #where_clause {
fn command<'b>() -> clap::Command {
let #app_var = clap::Command::new(#name);
Expand Down Expand Up @@ -82,6 +83,7 @@ pub fn gen_for_enum(
clippy::suspicious_else_formatting,
clippy::almost_swapped,
)]
#[automatically_derived]
impl #impl_generics clap::CommandFactory for #item_name #ty_generics #where_clause {
fn command<'b>() -> clap::Command {
let #app_var = clap::Command::new(#name)
Expand Down
2 changes: 2 additions & 0 deletions clap_derive/src/derives/parser.rs
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@ fn gen_for_struct(
let args = args::gen_for_struct(item, item_name, generics, fields)?;

Ok(quote! {
#[automatically_derived]
impl #impl_generics clap::Parser for #item_name #ty_generics #where_clause {}

#into_app
Expand All @@ -105,6 +106,7 @@ fn gen_for_enum(
let subcommand = subcommand::gen_for_enum(item, item_name, generics, variants)?;

Ok(quote! {
#[automatically_derived]
impl #impl_generics clap::Parser for #item_name #ty_generics #where_clause {}

#into_app
Expand Down
2 changes: 2 additions & 0 deletions clap_derive/src/derives/subcommand.rs
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ pub fn gen_for_enum(
clippy::suspicious_else_formatting,
clippy::almost_swapped,
)]
#[automatically_derived]
impl #impl_generics clap::FromArgMatches for #item_name #ty_generics #where_clause {
fn from_arg_matches(__clap_arg_matches: &clap::ArgMatches) -> ::std::result::Result<Self, clap::Error> {
Self::from_arg_matches_mut(&mut __clap_arg_matches.clone())
Expand All @@ -105,6 +106,7 @@ pub fn gen_for_enum(
clippy::suspicious_else_formatting,
clippy::almost_swapped,
)]
#[automatically_derived]
impl #impl_generics clap::Subcommand for #item_name #ty_generics #where_clause {
fn augment_subcommands <'b>(__clap_app: clap::Command) -> clap::Command {
#augmentation
Expand Down
1 change: 1 addition & 0 deletions clap_derive/src/derives/value_enum.rs
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ pub fn gen_for_enum(
clippy::suspicious_else_formatting,
clippy::almost_swapped,
)]
#[automatically_derived]
impl clap::ValueEnum for #item_name {
#value_variants
#to_possible_value
Expand Down
6 changes: 6 additions & 0 deletions clap_derive/src/dummies.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ use quote::quote;
pub fn parser(name: &Ident) -> proc_macro2::TokenStream {
let into_app = into_app(name);
quote!(
#[automatically_derived]
impl clap::Parser for #name {}
#into_app
)
Expand All @@ -15,6 +16,7 @@ pub fn parser(name: &Ident) -> proc_macro2::TokenStream {
#[must_use]
pub fn into_app(name: &Ident) -> proc_macro2::TokenStream {
quote! {
#[automatically_derived]
impl clap::CommandFactory for #name {
fn command<'b>() -> clap::Command {
unimplemented!()
Expand All @@ -29,6 +31,7 @@ pub fn into_app(name: &Ident) -> proc_macro2::TokenStream {
#[must_use]
pub fn from_arg_matches(name: &Ident) -> proc_macro2::TokenStream {
quote! {
#[automatically_derived]
impl clap::FromArgMatches for #name {
fn from_arg_matches(_m: &clap::ArgMatches) -> ::std::result::Result<Self, clap::Error> {
unimplemented!()
Expand All @@ -44,6 +47,7 @@ pub fn from_arg_matches(name: &Ident) -> proc_macro2::TokenStream {
pub fn subcommand(name: &Ident) -> proc_macro2::TokenStream {
let from_arg_matches = from_arg_matches(name);
quote! {
#[automatically_derived]
impl clap::Subcommand for #name {
fn augment_subcommands(_cmd: clap::Command) -> clap::Command {
unimplemented!()
Expand All @@ -63,6 +67,7 @@ pub fn subcommand(name: &Ident) -> proc_macro2::TokenStream {
pub fn args(name: &Ident) -> proc_macro2::TokenStream {
let from_arg_matches = from_arg_matches(name);
quote! {
#[automatically_derived]
impl clap::Args for #name {
fn augment_args(_cmd: clap::Command) -> clap::Command {
unimplemented!()
Expand All @@ -78,6 +83,7 @@ pub fn args(name: &Ident) -> proc_macro2::TokenStream {
#[must_use]
pub fn value_enum(name: &Ident) -> proc_macro2::TokenStream {
quote! {
#[automatically_derived]
impl clap::ValueEnum for #name {
fn value_variants<'a>() -> &'a [Self]{
unimplemented!()
Expand Down

0 comments on commit e7729d1

Please sign in to comment.