commit 887bebb4a743e1eb4d2598341542ee662adc267e
parent 5c2f6d9e30e38114a908603d67861c225e2a036f
Author: Yersa Nordman <yersa@finwo.nl>
Date: Sun, 18 Feb 2024 20:50:45 +0100
Added mindex_nth method
Diffstat:
2 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/src/mindex.c b/src/mindex.c
@@ -146,6 +146,13 @@ void * mindex_get(struct mindex_t *mindex, void *pattern) {
return value;
}
+void * mindex_nth(struct mindex_t *mindex, int index) {
+ if (index >= mindex->length) {
+ return NULL;
+ }
+ return mindex->items[index];
+}
+
void * mindex_rand(struct mindex_t *mindex) {
if (!mindex->length) {
return NULL;
diff --git a/src/mindex.h b/src/mindex.h
@@ -15,6 +15,7 @@ struct mindex_t {
struct mindex_t * mindex_init(int (*compare)(const void *a, const void *b, void *udata), void (*purge)(void *item, void *udata), void *udata);
void mindex_set(struct mindex_t *mindex, void *item);
void * mindex_get(struct mindex_t *mindex, void *pattern);
+void * mindex_nth(struct mindex_t *mindex, int index);
void * mindex_rand(struct mindex_t *mindex);
void mindex_delete(struct mindex_t *mindex, void *pattern);
size_t mindex_length(struct mindex_t *mindex);