diff options
author | Jeff King <peff@peff.net> | 2018-08-10 19:09:06 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-08-13 13:47:50 -0700 |
commit | 202e7f1e161b5bce6587d1a696843ead10a8b477 (patch) | |
tree | 4f21fa4f3dd1608df4b977345f8ce5f82bf4fa95 /cache.h | |
parent | 1d89318c48d233d52f1db230cf622935ac3c69fa (diff) | |
download | git-202e7f1e161b5bce6587d1a696843ead10a8b477.tar.gz |
for_each_*_object: store flag definitions in a single location
These flags were split between cache.h and packfile.h,
because some of the flags apply only to packs. However, they
share a single numeric namespace, since both are respected
for the packed variant. Let's make sure they're defined
together so that nobody accidentally adds a new flag in one
location that duplicates the other.
While we're here, let's also put them in an enum (which
helps debugger visibility) and use "(1<<n)" rather than
counting powers of 2 manually.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'cache.h')
-rw-r--r-- | cache.h | 13 |
1 files changed, 12 insertions, 1 deletions
@@ -1624,11 +1624,22 @@ int for_each_loose_file_in_objdir_buf(struct strbuf *path, void *data); /* + * Flags for for_each_*_object(), including for_each_loose below and + * for_each_packed in packfile.h. + */ +enum for_each_object_flags { + /* Iterate only over local objects, not alternates. */ + FOR_EACH_OBJECT_LOCAL_ONLY = (1<<0), + + /* Only iterate over packs obtained from the promisor remote. */ + FOR_EACH_OBJECT_PROMISOR_ONLY = (1<<1), +}; + +/* * Iterate over loose objects in both the local * repository and any alternates repositories (unless the * LOCAL_ONLY flag is set). */ -#define FOR_EACH_OBJECT_LOCAL_ONLY 0x1 extern int for_each_loose_object(each_loose_object_fn, void *, unsigned flags); /* |