khash: rename oid helper functions
For use in object_id hash tables, we have oid_hash() and oid_equal(). But these are confusingly similar to the existing oideq() and the oidhash() we plan to add to replace sha1hash(). The big difference from those functions is that rather than accepting a const pointer to the "struct object_id", we take the arguments by value (which is a khash internal convention). So let's make that obvious by calling them oidhash_by_value() and oideq_by_value(). Those names are fairly horrendous to type, but we rarely need to do so; they are passed to the khash implementation macro and then only used internally. Callers get to use the nice kh_put_oid_map(), etc. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
685d34a96e
commit
e465e7c41d
10
khash.h
10
khash.h
@ -324,20 +324,20 @@ static const double __ac_HASH_UPPER = 0.77;
|
||||
code; \
|
||||
} }
|
||||
|
||||
static inline unsigned int oid_hash(struct object_id oid)
|
||||
static inline unsigned int oidhash_by_value(struct object_id oid)
|
||||
{
|
||||
return sha1hash(oid.hash);
|
||||
}
|
||||
|
||||
static inline int oid_equal(struct object_id a, struct object_id b)
|
||||
static inline int oideq_by_value(struct object_id a, struct object_id b)
|
||||
{
|
||||
return oideq(&a, &b);
|
||||
}
|
||||
|
||||
KHASH_INIT(oid_set, struct object_id, int, 0, oid_hash, oid_equal)
|
||||
KHASH_INIT(oid_set, struct object_id, int, 0, oidhash_by_value, oideq_by_value)
|
||||
|
||||
KHASH_INIT(oid_map, struct object_id, void *, 1, oid_hash, oid_equal)
|
||||
KHASH_INIT(oid_map, struct object_id, void *, 1, oidhash_by_value, oideq_by_value)
|
||||
|
||||
KHASH_INIT(oid_pos, struct object_id, int, 1, oid_hash, oid_equal)
|
||||
KHASH_INIT(oid_pos, struct object_id, int, 1, oidhash_by_value, oideq_by_value)
|
||||
|
||||
#endif /* __AC_KHASH_H */
|
||||
|
Loading…
Reference in New Issue
Block a user