Re: [PATCH 03/11] revert: Introduce a struct to parse command-line options into
- From
Jonathan Nieder <jrnieder@gmail.com>
- Date
- Apr 10, 2011, 19:21 UTC
- Message-ID
- <20110410192154.GB28163@elie>
- In-Reply-To
- <1302448317-32387-4-git-send-email-artagnon@gmail.com>
Ramkumar Ramachandra wrote:
> [Subject: revert: Introduce a struct to parse command-line options into] > > Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
This gives a hint of another way to avoid the usage() trouble mentioned in patch 1: it might be possible to let the caller take care of parsing arguments.
Show 14 quoted lines
> --- a/builtin/revert.c
> +++ b/builtin/revert.c
> @@ -35,17 +35,27 @@ static const char * const cherry_pick_usage[] = {
> NULL
> };
>
> -static int edit, no_replay, no_commit, mainline, signoff, allow_ff;
> -static enum { REVERT, CHERRY_PICK } action;
> -static int commit_argc;
> -static const char **commit_argv;
> -static int allow_rerere_auto;
>
> +static struct {
> + enum { REVERT, CHERRY_PICK } action;That would require giving this struct a name, so it can be passed around. Not a bad idea anyway imho since then a person reading top-to-bottom is not left in suspense:
struct cherry_pick_opts {
enum { REVERT, CHERRY_PICK } action;unsigned edit:1; unsigned no_replay:1; ... };