inventory 0.2 is going to want this.
checksum = "7fe8c2b5119660fa0a7020d0013bfa7d3ae6e4e27084b391e057062746a7c862"
dependencies = [
"either",
- "proc-macro-crate",
+ "proc-macro-crate 0.1.5",
"proc-macro-error",
"proc-macro2 1.0.36",
"quote 1.0.15",
"wasm-bindgen",
]
+[[package]]
+name = "const-default"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0b396d1f76d455557e1218ec8066ae14bba60b4b36ecd55577ba979f5db7ecaa"
+dependencies = [
+ "const-default-derive",
+]
+
+[[package]]
+name = "const-default-derive"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0f814dd8cbb812233751ff6857b7fa86d9f52e88ac64e8f54e7a1ca0168f03da"
+dependencies = [
+ "proc-macro-crate 1.1.3",
+ "proc-macro2 1.0.36",
+ "quote 1.0.15",
+ "syn 1.0.86",
+]
+
[[package]]
name = "convert_case"
version = "0.4.0"
version = "0.7.3"
dependencies = [
"argparse",
+ "const-default",
"directories",
"fehler",
"num-traits",
"toml 0.5.8",
]
+[[package]]
+name = "proc-macro-crate"
+version = "1.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e17d47ce914bf4de440332250b0edd23ce48c005f59fab39d3335866b114f11a"
+dependencies = [
+ "thiserror",
+ "toml 0.5.8",
+]
+
[[package]]
name = "proc-macro-error"
version = "1.0.4"
num-traits="0.2"
serde_with="1"
+const-default = { version="1", features=["derive" ] }
serde = { version="1" , features=["derive", "rc"] }
strum = { version="0.24" , features=["derive" ] }
verb: $verb,
help: $help,
call,
- props: default(),
+ props: $crate::SubcommandProperties::DEFAULT,
}}
};
{$verb:expr, $help:expr, $($prop:tt)+} => {
verb: $verb,
help: $help,
call,
- props: SubcommandProperties { $($prop)* ..default() },
+ props: SubcommandProperties {
+ $($prop)*
+ ..$crate::SubcommandProperties::DEFAULT
+ },
}}
};
}
pub use argparse::{self,ArgumentParser,action::{TypedAction,ParseResult}};
pub use argparse::action::{Action,IFlagAction,IArgAction};
+pub use const_default::ConstDefault;
pub use derive_more::Display;
pub use otter::prelude::*;
}
inventory::collect!(Subcommand);
-#[derive(Default,Debug)]
+#[derive(ConstDefault,Debug)]
pub struct SubcommandProperties {
suppress_selectaccount: bool,
}