summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Taylor Blau <me@ttaylorr.com>2020-04-13 22:04:22 -0600
committerLibravatar Junio C Hamano <gitster@pobox.com>2020-04-15 09:20:29 -0700
commitf4781068faafad5e10fb6e8ae312ebd5b0e7bb55 (patch)
tree69daf700e92b80bf5c12e0690741f8298ef1df15
parentbuiltin/commit-graph.c: introduce split strategy 'replace' (diff)
downloadtgif-f4781068faafad5e10fb6e8ae312ebd5b0e7bb55.tar.xz
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>
-rw-r--r--oidset.c5
-rw-r--r--oidset.h5
2 files changed, 10 insertions, 0 deletions
diff --git a/oidset.c b/oidset.c
index f63ce818f6..15d4e18c37 100644
--- a/oidset.c
+++ b/oidset.c
@@ -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;
diff --git a/oidset.h b/oidset.h
index 5346563b0b..80c3a347f9 100644
--- a/oidset.h
+++ b/oidset.h
@@ -56,6 +56,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.
*/