Re: [PATCH 03/15] push: reorder switch cases
- From
Felipe Contreras <felipe.contreras@gmail.com>
- Date
- May 31, 2021, 08:14 UTC
- Message-ID
- <60b49ae37803f_24d282085c@natae.notmuch>
- In-Reply-To
- <xmqqeednwgvo.fsf@gitster.g>
Junio C Hamano wrote:
Show 36 quoted lines
> Felipe Contreras <felipe.contreras@gmail.com> writes:
>
> > We want all the cases that don't do anything with a branch first, and
> > then the rest.
> >
> > Will help further patches.
> >
> > Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
> > ---
> > builtin/push.c | 15 +++++++++------
> > 1 file changed, 9 insertions(+), 6 deletions(-)
> >
> > diff --git a/builtin/push.c b/builtin/push.c
> > index f4e919450d..c19321bb9d 100644
> > --- a/builtin/push.c
> > +++ b/builtin/push.c
> > @@ -254,11 +254,19 @@ static void setup_default_push_refspecs(struct remote *remote)
> > int triangular = is_workflow_triangular(remote);
> >
> > switch (push_default) {
> > - default:
> > case PUSH_DEFAULT_MATCHING:
> > refspec_append(&rs, ":");
> > return;
> >
> > + case PUSH_DEFAULT_NOTHING:
> > + die(_("You didn't specify any refspecs to push, and "
> > + "push.default is \"nothing\"."));
> > + return;
> > + default:
> > + }
> > +
> > + switch (push_default) {
> > + default:
>
> This is not quite "reorder" but split into two.OK.
> It is not yet clear > how it helps, but hopefully we'll find out why splitting the switch > into two switches is a good idea soon in a later step, so the title > needs updating to sell that aspect of the change
How about: By splitting the two kinds of modes we can return sooner in the case the mode doesn't need to do anything else, and for the rest that reuse quite a bit of code it can be set up after the first switch.
-- Felipe Contreras