aboutsummaryrefslogtreecommitdiff
path: root/xtask/src/argument_parsing.rs
diff options
context:
space:
mode:
Diffstat (limited to 'xtask/src/argument_parsing.rs')
-rw-r--r--xtask/src/argument_parsing.rs15
1 files changed, 14 insertions, 1 deletions
diff --git a/xtask/src/argument_parsing.rs b/xtask/src/argument_parsing.rs
index ae73782..c8c0368 100644
--- a/xtask/src/argument_parsing.rs
+++ b/xtask/src/argument_parsing.rs
@@ -468,7 +468,7 @@ pub enum Commands {
/// arguments will be passed on
///
/// Example: `cargo xtask size -- -A`
- Size(Arg),
+ Size(ArgsAndOverwrite),
/// Run examples in QEMU and compare against expected output
///
@@ -563,6 +563,19 @@ pub struct QemuAndRun {
}
#[derive(Debug, Parser, Clone)]
+pub struct ArgsAndOverwrite {
+ /// If expected output is missing or mismatching, recreate the file
+ ///
+ /// This overwrites only missing or mismatching
+ #[arg(long)]
+ pub overwrite_expected: bool,
+
+ /// Options to pass to `cargo <subcommand>`
+ #[command(subcommand)]
+ pub arguments: Option<ExtraArguments>,
+}
+
+#[derive(Debug, Parser, Clone)]
pub struct Arg {
/// Options to pass to `cargo <subcommand>`
#[command(subcommand)]