mirror of
https://github.com/clap-rs/clap
synced 2024-11-10 23:04:23 +00:00
refactor(help): More directly write args
This commit is contained in:
parent
acdd2c33f0
commit
676e934a61
1 changed files with 12 additions and 16 deletions
|
@ -267,14 +267,7 @@ impl<'cmd> Usage<'cmd> {
|
||||||
|
|
||||||
// Returns the required args in usage string form by fully unrolling all groups
|
// Returns the required args in usage string form by fully unrolling all groups
|
||||||
pub(crate) fn write_args(&self, styled: &mut StyledStr, incls: &[Id], force_optional: bool) {
|
pub(crate) fn write_args(&self, styled: &mut StyledStr, incls: &[Id], force_optional: bool) {
|
||||||
for required in self.get_args(incls, force_optional) {
|
debug!("Usage::write_args: incls={incls:?}",);
|
||||||
styled.push_styled(&required);
|
|
||||||
styled.push_str(" ");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
pub(crate) fn get_args(&self, incls: &[Id], force_optional: bool) -> Vec<StyledStr> {
|
|
||||||
debug!("Usage::get_args: incls={incls:?}",);
|
|
||||||
use std::fmt::Write as _;
|
use std::fmt::Write as _;
|
||||||
let literal = &self.styles.get_literal();
|
let literal = &self.styles.get_literal();
|
||||||
|
|
||||||
|
@ -381,17 +374,20 @@ impl<'cmd> Usage<'cmd> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
let mut ret_val = Vec::new();
|
|
||||||
if !force_optional {
|
if !force_optional {
|
||||||
ret_val.extend(required_opts);
|
for arg in required_opts {
|
||||||
ret_val.extend(required_groups);
|
styled.push_styled(&arg);
|
||||||
|
styled.push_str(" ");
|
||||||
|
}
|
||||||
|
for arg in required_groups {
|
||||||
|
styled.push_styled(&arg);
|
||||||
|
styled.push_str(" ");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
for pos in required_positionals.into_iter().flatten() {
|
for arg in required_positionals.into_iter().flatten() {
|
||||||
ret_val.push(pos);
|
styled.push_styled(&arg);
|
||||||
|
styled.push_str(" ");
|
||||||
}
|
}
|
||||||
|
|
||||||
debug!("Usage::get_args: ret_val={ret_val:?}");
|
|
||||||
ret_val
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub(crate) fn get_required_usage_from(
|
pub(crate) fn get_required_usage_from(
|
||||||
|
|
Loading…
Reference in a new issue