aboutsummaryrefslogtreecommitdiff
path: root/xtask/src/argument_parsing.rs
diff options
context:
space:
mode:
authorHenrik Tjäder <henrik@tjaders.com>2025-06-25 20:56:00 +0200
committerEmil Fresk <emil.fresk@gmail.com>2025-07-02 18:34:20 +0000
commit67730ceedbe231366bf2ad97faf22da8dd915ca2 (patch)
tree92652acbb25130ebae4e30794a20d15f370ec9b8 /xtask/src/argument_parsing.rs
parentb4a0c9057df8df239edcd7c6bc2b5661868ef1bb (diff)
xtask: size: Store the expected output same as run
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)]