hashmap: remove type arg from hashmap_{get,put,remove}_entry
Since these macros already take a `keyvar' pointer of a known type, we can rely on OFFSETOF_VAR to get the correct offset without relying on non-portable `__typeof__' and `offsetof'. Argument order is also rearranged, so `keyvar' and `member' are sequential as they are used as: `keyvar->member' Signed-off-by: Eric Wong <e@80x24.org> Reviewed-by: Derrick Stolee <stolee@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
23dee69f53
commit
404ab78e39
@ -141,9 +141,7 @@ static void cache_remove_path(struct submodule_cache *cache,
|
||||
struct submodule_entry *removed;
|
||||
hashmap_entry_init(&e.ent, hash);
|
||||
e.config = submodule;
|
||||
removed = hashmap_remove_entry(&cache->for_path, &e, NULL,
|
||||
struct submodule_entry,
|
||||
ent /* member name */);
|
||||
removed = hashmap_remove_entry(&cache->for_path, &e, ent, NULL);
|
||||
free(removed);
|
||||
}
|
||||
|
||||
@ -172,8 +170,7 @@ static const struct submodule *cache_lookup_path(struct submodule_cache *cache,
|
||||
hashmap_entry_init(&key.ent, hash);
|
||||
key.config = &key_config;
|
||||
|
||||
entry = hashmap_get_entry(&cache->for_path, &key, NULL,
|
||||
struct submodule_entry, ent);
|
||||
entry = hashmap_get_entry(&cache->for_path, &key, ent, NULL);
|
||||
if (entry)
|
||||
return entry->config;
|
||||
return NULL;
|
||||
@ -193,8 +190,7 @@ static struct submodule *cache_lookup_name(struct submodule_cache *cache,
|
||||
hashmap_entry_init(&key.ent, hash);
|
||||
key.config = &key_config;
|
||||
|
||||
entry = hashmap_get_entry(&cache->for_name, &key, NULL,
|
||||
struct submodule_entry, ent);
|
||||
entry = hashmap_get_entry(&cache->for_name, &key, ent, NULL);
|
||||
if (entry)
|
||||
return entry->config;
|
||||
return NULL;
|
||||
|
Reference in New Issue
Block a user