shared/options: store argc+argv in the OptionParser state struct

After writing the code to parse options in a bunch of places, I think
passing the argc+argv to various functions to query state is annoying.
It seems nicer to just stash them in the state struct once.
This commit is contained in:
Zbigniew Jędrzejewski-Szmek
2026-03-26 10:31:23 +01:00
parent 5dd2ae14db
commit f4a5bf92e9
12 changed files with 72 additions and 73 deletions
+3 -3
View File
@@ -75,10 +75,10 @@ static int parse_argv(int argc, char *argv[], char ***ret_args) {
assert(argc >= 0);
assert(argv);
OptionParser state = {};
OptionParser state = { argc, argv };
const char *arg;
FOREACH_OPTION(&state, c, argc, argv, &arg, /* on_error= */ return c)
FOREACH_OPTION(&state, c, &arg, /* on_error= */ return c)
switch (c) {
OPTION_COMMON_HELP:
return help();
@@ -93,7 +93,7 @@ static int parse_argv(int argc, char *argv[], char ***ret_args) {
break;
}
*ret_args = option_parser_get_args(&state, argc, argv);
*ret_args = option_parser_get_args(&state);
return 1;
}