diff mbox series

[5/7] oidset: introduce 'oidset_size'

Message ID 4a9798ba6f3aab081dff5e40e1d91568cf4ba23b.1586836700.git.me@ttaylorr.com (mailing list archive)
State New, archived
Headers show
Series commit-graph: split strategies, '--[no-]check-oids' | expand

Commit Message

Taylor Blau April 14, 2020, 4:04 a.m. UTC
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>
---
 oidset.c | 5 +++++
 oidset.h | 5 +++++
 2 files changed, 10 insertions(+)
diff mbox series

Patch

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 d8a106b127..8261c36b91 100644
--- a/oidset.h
+++ b/oidset.h
@@ -54,6 +54,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.