oidset: introduce 'oidset_size'

Occasionally, it may be useful for callers to know the number of object
IDs in an oidset. Right now, the only way to compute this is to call
'kh_size' on the internal 'kh_set_oid_t'.

Similar to how we wrap other 'kh_*' functions over the 'oidset' type,
let's allow callers to compute this value by introducing 'oidset_size'.

We will add its first caller in the subsequent commit.

Signed-off-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Taylor Blau 2020-04-13 22:04:22 -06:00 committed by Junio C Hamano
parent 8a6ac287b2
commit f4781068fa
2 changed files with 10 additions and 0 deletions

View File

@ -36,6 +36,11 @@ void oidset_clear(struct oidset *set)
oidset_init(set, 0);
}
int oidset_size(struct oidset *set)
{
return kh_size(&set->set);
}
void oidset_parse_file(struct oidset *set, const char *path)
{
FILE *fp;

View File

@ -55,6 +55,11 @@ int oidset_insert(struct oidset *set, const struct object_id *oid);
*/
int oidset_remove(struct oidset *set, const struct object_id *oid);
/**
* Returns the number of oids in the set.
*/
int oidset_size(struct oidset *set);
/**
* Remove all entries from the oidset, freeing any resources associated with
* it.