mirror of
https://github.com/git/git.git
synced 2025-12-12 20:36:24 +01:00
string-list: align string_list_split() with its _in_place() counterpart
The string_list_split_in_place() function was updated by 52acddf3
(string-list: multi-delimiter `string_list_split_in_place()`,
2023-04-24) to take more than one delimiter characters, hoping that
we can later use it to replace our uses of strtok(). We however did
not make a matching change to the string_list_split() function,
which is very similar.
Before giving both functions more features in future commits, allow
string_list_split() to also take more than one delimiter characters
to make them closer to each other.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
@@ -254,7 +254,7 @@ struct string_list_item *unsorted_string_list_lookup(struct string_list *list,
|
||||
void unsorted_string_list_delete_item(struct string_list *list, int i, int free_util);
|
||||
|
||||
/**
|
||||
* Split string into substrings on character `delim` and append the
|
||||
* Split string into substrings on characters in `delim` and append the
|
||||
* substrings to `list`. The input string is not modified.
|
||||
* list->strdup_strings must be set, as new memory needs to be
|
||||
* allocated to hold the substrings. If maxsplit is non-negative,
|
||||
@@ -262,15 +262,15 @@ void unsorted_string_list_delete_item(struct string_list *list, int i, int free_
|
||||
* appended to list.
|
||||
*
|
||||
* Examples:
|
||||
* string_list_split(l, "foo:bar:baz", ':', -1) -> ["foo", "bar", "baz"]
|
||||
* string_list_split(l, "foo:bar:baz", ':', 0) -> ["foo:bar:baz"]
|
||||
* string_list_split(l, "foo:bar:baz", ':', 1) -> ["foo", "bar:baz"]
|
||||
* string_list_split(l, "foo:bar:", ':', -1) -> ["foo", "bar", ""]
|
||||
* string_list_split(l, "", ':', -1) -> [""]
|
||||
* string_list_split(l, ":", ':', -1) -> ["", ""]
|
||||
* string_list_split(l, "foo:bar:baz", ":", -1) -> ["foo", "bar", "baz"]
|
||||
* string_list_split(l, "foo:bar:baz", ":", 0) -> ["foo:bar:baz"]
|
||||
* string_list_split(l, "foo:bar:baz", ":", 1) -> ["foo", "bar:baz"]
|
||||
* string_list_split(l, "foo:bar:", ":", -1) -> ["foo", "bar", ""]
|
||||
* string_list_split(l, "", ":", -1) -> [""]
|
||||
* string_list_split(l, ":", ":", -1) -> ["", ""]
|
||||
*/
|
||||
int string_list_split(struct string_list *list, const char *string,
|
||||
int delim, int maxsplit);
|
||||
const char *delim, int maxsplit);
|
||||
|
||||
/*
|
||||
* Like string_list_split(), except that string is split in-place: the
|
||||
|
||||
Reference in New Issue
Block a user