Re: [PATCH 1/7] for_each_*_object: store flag definitions in a single location
From: Stefan Beller <hidden>
Date: 2018-08-10 23:27:39
On Fri, Aug 10, 2018 at 4:09 PM Jeff King [off-list ref] wrote:
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.
All good, but ...
cache.h | 13 ++++++++++++- packfile.h | 8 ++------ 2 files changed, 14 insertions(+), 7 deletions(-)
rubs me the wrong way. ;-) cache.h is such a misnomer of a name, and a kitchen sink of a file in the Git project that in an ideal world it would be way smaller and contain only things related to some caching related code. I would suggest object.h or object-store.h instead. Probably the object-store as that will be the only external exposure and hopefully we'd get the objects in a similar shape as the refs subsystem eventually? I might be biased by commits such as 4f39cd821d1 (pack: move pack name-related functions, 2017-08-18)