diff options
author | Jeff King <peff@peff.net> | 2011-06-09 11:55:23 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-06-22 11:25:20 -0700 |
commit | c8ba163916554e9ffd3ce8cb2beeff003d90c0c3 (patch) | |
tree | ae035aa6494b6b852d3ddf4e2989a35900a6f0dc /test-parse-options.c | |
parent | f77bccaeba7a4c542e9b89d144af74bddd36fd08 (diff) | |
download | git-c8ba163916554e9ffd3ce8cb2beeff003d90c0c3.tar.gz |
parse-options: add OPT_STRING_LIST helper
This just adds repeated invocations of an option to a list
of strings. Using the "--no-<var>" form will reset the list
to empty.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'test-parse-options.c')
-rw-r--r-- | test-parse-options.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/test-parse-options.c b/test-parse-options.c index 4e3710b9a8..91a5701657 100644 --- a/test-parse-options.c +++ b/test-parse-options.c @@ -1,5 +1,6 @@ #include "cache.h" #include "parse-options.h" +#include "string-list.h" static int boolean = 0; static int integer = 0; @@ -9,6 +10,7 @@ static int verbose = 0, dry_run = 0, quiet = 0; static char *string = NULL; static char *file = NULL; static int ambiguous; +static struct string_list list; static int length_callback(const struct option *opt, const char *arg, int unset) { @@ -54,6 +56,7 @@ int main(int argc, const char **argv) OPT_STRING('o', NULL, &string, "str", "get another string"), OPT_SET_PTR(0, "default-string", &string, "set string to default", (unsigned long)"default"), + OPT_STRING_LIST(0, "list", &list, "str", "add str to list"), OPT_GROUP("Magic arguments"), OPT_ARGUMENT("quux", "means --quux"), OPT_NUMBER_CALLBACK(&integer, "set integer to NUM", @@ -85,6 +88,9 @@ int main(int argc, const char **argv) printf("dry run: %s\n", dry_run ? "yes" : "no"); printf("file: %s\n", file ? file : "(not set)"); + for (i = 0; i < list.nr; i++) + printf("list: %s\n", list.items[i].string); + for (i = 0; i < argc; i++) printf("arg %02d: %s\n", i, argv[i]); |