From: Junio C Hamano Date: Mon, 15 Apr 2013 17:38:05 GMT Subject: Re: [PATCH 03/33] refs: document do_for_each_ref() and do_one_ref() Message-ID: <7vobdfwv7m.fsf@alter.siamese.dyndns.org> In-Reply-To: <1365944088-10588-4-git-send-email-mhagger@alum.mit.edu> Michael Haggerty writes: > Signed-off-by: Michael Haggerty > --- > refs.c | 13 ++++++++++++- > 1 file changed, 12 insertions(+), 1 deletion(-) > > diff --git a/refs.c b/refs.c > index 1df1ccd..f503ec4 100644 > --- a/refs.c > +++ b/refs.c > @@ -525,10 +525,14 @@ static void sort_ref_dir(struct ref_dir *dir) > dir->sorted = dir->nr = i; > } > > -#define DO_FOR_EACH_INCLUDE_BROKEN 01 > +/* Include broken references in a do_for_each_ref*() iteration: */ > +#define DO_FOR_EACH_INCLUDE_BROKEN 0x01 > > static struct ref_entry *current_ref; > > +/* > + * Handle one reference in a do_for_each_ref*()-style iteration. > + */ > static int do_one_ref(const char *base, each_ref_fn fn, int trim, > int flags, void *cb_data, struct ref_entry *entry) > { > @@ -1338,6 +1342,13 @@ void warn_dangling_symref(FILE *fp, const char *msg_fmt, const char *refname) > for_each_rawref(warn_if_dangling_symref, &data); > } > > +/* > + * Call fn for each reference in the specified submodule for which the > + * refname begins with base. If trim is non-zero, then trim that many > + * characters off the beginning of each refname before passing the > + * refname to fn. flags can be DO_FOR_EACH_INCLUDE_BROKEN to include > + * broken references in the iteration. > + */ Early termination due to "fn()" returning non-zero needs to be documented here, no? > static int do_for_each_ref(const char *submodule, const char *base, each_ref_fn fn, > int trim, int flags, void *cb_data) > {