summaryrefslogtreecommitdiffstats
path: root/vendor/clap_builder/src/mkeymap.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-30 18:31:44 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-30 18:31:44 +0000
commitc23a457e72abe608715ac76f076f47dc42af07a5 (patch)
tree2772049aaf84b5c9d0ed12ec8d86812f7a7904b6 /vendor/clap_builder/src/mkeymap.rs
parentReleasing progress-linux version 1.73.0+dfsg1-1~progress7.99u1. (diff)
downloadrustc-c23a457e72abe608715ac76f076f47dc42af07a5.tar.xz
rustc-c23a457e72abe608715ac76f076f47dc42af07a5.zip
Merging upstream version 1.74.1+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/clap_builder/src/mkeymap.rs')
-rw-r--r--vendor/clap_builder/src/mkeymap.rs9
1 files changed, 9 insertions, 0 deletions
diff --git a/vendor/clap_builder/src/mkeymap.rs b/vendor/clap_builder/src/mkeymap.rs
index e9d6ab844..301c7bc56 100644
--- a/vendor/clap_builder/src/mkeymap.rs
+++ b/vendor/clap_builder/src/mkeymap.rs
@@ -123,6 +123,15 @@ impl MKeyMap {
self.args.iter_mut()
}
+ /// Mutate every argument.
+ pub(crate) fn mut_args<F>(&mut self, f: F)
+ where
+ F: FnMut(Arg) -> Arg,
+ {
+ let mut args = std::mem::take(&mut self.args);
+ self.args.extend(args.drain(..).map(f));
+ }
+
/// We need a lazy build here since some we may change args after creating
/// the map, you can checkout who uses `args_mut`.
pub(crate) fn _build(&mut self) {