aboutsummaryrefslogtreecommitdiff
path: root/mingling/src/parser/args.rs
diff options
context:
space:
mode:
author魏曹先生 <1992414357@qq.com>2026-04-14 21:57:06 +0800
committer魏曹先生 <1992414357@qq.com>2026-04-14 21:57:06 +0800
commit59d9fbdf0873b241774366a91c76728d63a9004d (patch)
treead93f4f34b4ff9afb7fb3edfc2de5ed6c826bb70 /mingling/src/parser/args.rs
parent8ed25a022daaf0c9d50b3cb224cb67598e383e65 (diff)
parent33469c75614c444f512fd51dbc78a31a9a4bec82 (diff)
Add argument filtering and CLI build support
Diffstat (limited to 'mingling/src/parser/args.rs')
-rw-r--r--mingling/src/parser/args.rs13
1 files changed, 13 insertions, 0 deletions
diff --git a/mingling/src/parser/args.rs b/mingling/src/parser/args.rs
index 2a07e97..9c08d43 100644
--- a/mingling/src/parser/args.rs
+++ b/mingling/src/parser/args.rs
@@ -154,4 +154,17 @@ impl Argument {
let new = Vec::new();
replace(&mut self.vec, new)
}
+
+ /// Removes all arguments that start with a dash ('-')
+ ///
+ /// This method filters out all command-line style flags from the arguments,
+ /// returning a new `Argument` instance containing only non-flag arguments.
+ pub fn strip_all_flags(mut self) -> Self {
+ self.vec = self
+ .vec
+ .into_iter()
+ .filter(|f| !f.starts_with('-'))
+ .collect();
+ self
+ }
}