]>
Commit | Line | Data |
---|---|---|
beb47437 JS |
1 | #include "cache.h" |
2 | #include "parse-options.h" | |
3 | ||
4 | static int boolean = 0; | |
5 | static int integer = 0; | |
6 | static char *string = NULL; | |
7 | ||
8 | int main(int argc, const char **argv) | |
9 | { | |
10 | const char *usage[] = { | |
11 | "test-parse-options <options>", | |
12 | NULL | |
13 | }; | |
14 | struct option options[] = { | |
15 | OPT_BOOLEAN('b', "boolean", &boolean, "get a boolean"), | |
16 | OPT_INTEGER('i', "integer", &integer, "get a integer"), | |
17 | OPT_INTEGER('j', NULL, &integer, "get a integer, too"), | |
18 | OPT_GROUP("string options"), | |
19 | OPT_STRING('s', "string", &string, "string", "get a string"), | |
20 | OPT_STRING(0, "string2", &string, "str", "get another string"), | |
243e0614 | 21 | OPT_STRING(0, "st", &string, "st", "get another string (pervert ordering)"), |
3a9f0f41 | 22 | OPT_STRING('o', NULL, &string, "str", "get another string"), |
580d5bff PH |
23 | OPT_GROUP("magic arguments"), |
24 | OPT_ARGUMENT("quux", "means --quux"), | |
beb47437 JS |
25 | OPT_END(), |
26 | }; | |
27 | int i; | |
28 | ||
29 | argc = parse_options(argc, argv, options, usage, 0); | |
30 | ||
31 | printf("boolean: %d\n", boolean); | |
32 | printf("integer: %d\n", integer); | |
33 | printf("string: %s\n", string ? string : "(not set)"); | |
34 | ||
35 | for (i = 0; i < argc; i++) | |
36 | printf("arg %02d: %s\n", i, argv[i]); | |
37 | ||
38 | return 0; | |
39 | } |