Skip to content

Commit

Permalink
Merge pull request #2686 from ldm0/delimiter
Browse files Browse the repository at this point in the history
Make `value_delimiter` accept `char` rather than `String`
  • Loading branch information
pksunkara committed Aug 13, 2021
2 parents 3d2635b + a60836d commit d64ced0
Show file tree
Hide file tree
Showing 4 changed files with 9 additions and 13 deletions.
2 changes: 1 addition & 1 deletion clap.schema.json
Expand Up @@ -259,7 +259,7 @@
"type": "string"
},
"value_delimiter": {
"type": "string"
"$ref": "#/definitions/shortArg"
},
"visible_alias": {
"type": "string"
Expand Down
10 changes: 3 additions & 7 deletions src/build/arg/mod.rs
Expand Up @@ -2423,7 +2423,7 @@ impl<'help> Arg<'help> {
/// .arg(Arg::new("config")
/// .short('c')
/// .long("config")
/// .value_delimiter(";"))
/// .value_delimiter(';'))
/// .get_matches_from(vec![
/// "prog", "--config=val1;val2;val3"
/// ]);
Expand All @@ -2433,12 +2433,8 @@ impl<'help> Arg<'help> {
/// [`Arg::use_delimiter(true)`]: Arg::use_delimiter()
/// [`Arg::takes_value(true)`]: Arg::takes_value()
#[inline]
pub fn value_delimiter(mut self, d: &str) -> Self {
self.val_delim = Some(
d.chars()
.next()
.expect("Failed to get value_delimiter from arg"),
);
pub fn value_delimiter(mut self, d: char) -> Self {
self.val_delim = Some(d);
self.takes_value(true).use_delimiter(true)
}

Expand Down
6 changes: 3 additions & 3 deletions tests/help.rs
Expand Up @@ -1718,7 +1718,7 @@ fn issue_1052_require_delim_help() {
.takes_value(true)
.use_delimiter(true)
.require_delimiter(true)
.value_delimiter(":"),
.value_delimiter(':'),
);

assert!(utils::compare_output(
Expand Down Expand Up @@ -1844,7 +1844,7 @@ fn custom_headers_headers() {
.takes_value(true)
.use_delimiter(true)
.require_delimiter(true)
.value_delimiter(":"),
.value_delimiter(':'),
)
.help_heading("NETWORKING")
.arg(
Expand Down Expand Up @@ -1898,7 +1898,7 @@ fn multiple_custom_help_headers() {
.takes_value(true)
.use_delimiter(true)
.require_delimiter(true)
.value_delimiter(":"),
.value_delimiter(':'),
)
.help_heading("NETWORKING")
.arg(
Expand Down
4 changes: 2 additions & 2 deletions tests/multiple_values.rs
Expand Up @@ -634,7 +634,7 @@ fn different_sep() {
Arg::new("option")
.long("option")
.about("multiple options")
.value_delimiter(";"),
.value_delimiter(';'),
)
.try_get_matches_from(vec!["", "--option=val1;val2;val3"]);

Expand All @@ -655,7 +655,7 @@ fn different_sep_positional() {
.arg(
Arg::new("option")
.about("multiple options")
.value_delimiter(";"),
.value_delimiter(';'),
)
.try_get_matches_from(vec!["", "val1;val2;val3"]);

Expand Down

0 comments on commit d64ced0

Please sign in to comment.