git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Karthik Nayak <karthik.188@gmail.com>
To: Eric Sunshine <sunshine@sunshineco.com>
Cc: Git List <git@vger.kernel.org>,
	Christian Couder <christian.couder@gmail.com>,
	Matthieu Moy <Matthieu.Moy@grenoble-inp.fr>
Subject: Re: [WIP/PATCH v4 4/8] for-each-ref: introduce new structures for better organisation
Date: Sun, 31 May 2015 13:46:05 +0530	[thread overview]
Message-ID: <556AC345.2070101@gmail.com> (raw)
In-Reply-To: <CAPig+cSj8Ri=cz9gt_MmMcQQg7iH1beweKfrvEL3MExDY_EiKg@mail.gmail.com>

On 05/31/2015 08:44 AM, Eric Sunshine wrote:
> On Sat, May 30, 2015 at 1:53 PM, Karthik Nayak <karthik.188@gmail.com> wrote:
>> Intoduce 'ref_filter_cbdata' which will hold 'ref_filter'
>
> s/Intoduce/Introduce/
>
>> (Conditions to filter the refs on) and 'ref_array' (The array
>
> s/Conditions/conditions/
> s/The/the/
>
>> of ref_array_items). Modify the code to use these new structures.
>>
>> This is a preparatory patch to eventually move code from 'for-each-ref'
>> to 'ref-filter' and making it publically available.
>
> s/publically/publicly/
>
>> Mentored-by: Christian Couder <christian.couder@gmail.com>
>> Mentored-by: Matthieu Moy <matthieu.moy@grenoble-inp.fr>
>> Signed-off-by: Karthik Nayak <karthik.188@gmail.com>
>> ---
>> diff --git a/builtin/for-each-ref.c b/builtin/for-each-ref.c
>> index e634fd2..ef54c90 100644
>> --- a/builtin/for-each-ref.c
>> +++ b/builtin/for-each-ref.c
>> @@ -85,7 +99,7 @@ static struct {
>>    * a "*" to denote deref_tag().
>>    *
>>    * We parse given format string and sort specifiers, and make a list
>> - * of properties that we need to extract out of objects.  ref_array_item
>> + * of properties that we need to extract out of objects. ref_array_item
>
> Sneaking in whitespace change?
>
>>    * structure will hold an array of values extracted that can be
>>    * indexed with the "atom number", which is an index into this
>>    * array.
>> @@ -1076,12 +1085,12 @@ static char const * const for_each_ref_usage[] = {
>>
>>   int cmd_for_each_ref(int argc, const char **argv, const char *prefix)
>>   {
>> -       int i, num_refs;
>> +       int i;
>>          const char *format = "%(objectname) %(objecttype)\t%(refname)";
>>          struct ref_sort *sort = NULL, **sort_tail = &sort;
>>          int maxcount = 0, quote_style = 0;
>> -       struct ref_array_item **refs;
>> -       struct grab_ref_cbdata cbdata;
>> +       struct ref_filter_cbdata ref_cbdata;
>> +       memset(&ref_cbdata, 0, sizeof(ref_cbdata));
>>
>>          struct option opts[] = {
>
> Declaration (struct option opts[]) after statement (memset). I think
> you want to leave the memset() where it was below.
>
>>                  OPT_BIT('s', "shell", &quote_style,
>> @@ -1119,17 +1128,14 @@ int cmd_for_each_ref(int argc, const char **argv, const char *prefix)
>>          /* for warn_ambiguous_refs */
>>          git_config(git_default_config, NULL);
>>
>> -       memset(&cbdata, 0, sizeof(cbdata));
>> -       cbdata.grab_pattern = argv;
>> -       for_each_rawref(grab_single_ref, &cbdata);
>> -       refs = cbdata.grab_array;
>> -       num_refs = cbdata.grab_cnt;
>> +       ref_cbdata.filter.name_patterns = argv;
>> +       for_each_rawref(grab_single_ref, &ref_cbdata);
>>
>> -       sort_refs(sort, refs, num_refs);
>> +       sort_refs(sort, &ref_cbdata.array);
>>
>> -       if (!maxcount || num_refs < maxcount)
>> -               maxcount = num_refs;
>> +       if (!maxcount || ref_cbdata.array.nr < maxcount)
>> +               maxcount = ref_cbdata.array.nr;
>>          for (i = 0; i < maxcount; i++)
>> -               show_ref(refs[i], format, quote_style);
>> +               show_ref(ref_cbdata.array.items[i], format, quote_style);
>>          return 0;
>>   }
>> --
>> 2.4.2

Will change these, thanks!

-- 
Regards,
Karthik

  reply	other threads:[~2015-05-31  8:16 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <5569EF77.4010300@gmail.com>
2015-05-30 17:53 ` [WIP/PATCH v4 1/8] for-each-ref: extract helper functions out of grab_single_ref() Karthik Nayak
2015-05-31  2:58   ` Eric Sunshine
2015-05-31  8:11     ` Karthik Nayak
2015-05-31 17:34   ` Junio C Hamano
2015-05-31 17:48     ` Karthik Nayak
2015-05-31 20:39     ` Matthieu Moy
2015-06-01 14:39       ` Junio C Hamano
2015-05-30 17:53 ` [WIP/PATCH v4 2/8] for-each-ref: simplify code Karthik Nayak
2015-05-30 17:53 ` [WIP/PATCH v4 3/8] for-each-ref: rename 'refinfo' to 'ref_array_item' Karthik Nayak
2015-05-31 17:37   ` Junio C Hamano
2015-05-31 17:48     ` Karthik Nayak
2015-05-30 17:53 ` [WIP/PATCH v4 4/8] for-each-ref: introduce new structures for better organisation Karthik Nayak
2015-05-31  3:14   ` Eric Sunshine
2015-05-31  8:16     ` Karthik Nayak [this message]
2015-05-30 17:53 ` [WIP/PATCH v4 5/8] for-each-ref: introduce 'ref_filter_clear_data()' Karthik Nayak
2015-05-31  7:38   ` Christian Couder
2015-05-31  8:20     ` Karthik Nayak
2015-05-30 17:53 ` [WIP/PATCH v4 6/8] for-each-ref: rename some functions and make them public Karthik Nayak
2015-05-31  3:21   ` Eric Sunshine
2015-05-31  8:16     ` Karthik Nayak
2015-05-31  8:04   ` Christian Couder
2015-05-31  8:11     ` Christian Couder
2015-05-31  9:17       ` Karthik Nayak
2015-05-31 14:03         ` Christian Couder
2015-05-31 15:30           ` Karthik Nayak
2015-06-01  6:38           ` Matthieu Moy
2015-06-01 19:28             ` Karthik Nayak
2015-05-31 17:54     ` Junio C Hamano
2015-05-31 17:48   ` Junio C Hamano
2015-05-31 19:34     ` Karthik Nayak
2015-06-01 14:53       ` Junio C Hamano
2015-06-01 19:35         ` Karthik Nayak
2015-05-30 17:53 ` [WIP/PATCH v4 7/8] ref-filter: move code from 'for-each-ref' Karthik Nayak
2015-05-30 17:53 ` [WIP/PATCH v4 8/8] ref-filter: add 'ref-filter.h' Karthik Nayak
2015-05-31  3:43   ` Eric Sunshine
2015-05-31  8:19     ` Karthik Nayak
2015-05-31  8:29       ` Eric Sunshine
2015-05-31  9:12         ` Karthik Nayak
2015-05-31 20:46       ` Matthieu Moy
2015-05-31 20:50         ` Karthik Nayak
2015-05-31 22:34           ` Christian Couder
2015-06-01  6:47           ` Matthieu Moy
2015-05-31  8:20   ` Christian Couder
2015-05-31  9:16     ` Karthik Nayak

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=556AC345.2070101@gmail.com \
    --to=karthik.188@gmail.com \
    --cc=Matthieu.Moy@grenoble-inp.fr \
    --cc=christian.couder@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=sunshine@sunshineco.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).