commit e147c837eef7d32e6c4fe391b24c37685e8407cd
parent 32aac6a034f347c9adcba320bf998212779855bd
Author: Louis Burda <quent.burda@gmail.com>
Date: Mon, 20 Mar 2023 14:43:01 +0100
Fix -Wconversion error, add dvec_len and DVEC_ITER
Diffstat:
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/include/dvec.h b/include/dvec.h
@@ -3,8 +3,11 @@
#include "allocator.h"
#include <stdbool.h>
+#include <stddef.h>
#include <stdlib.h>
+#define DVEC_ITER(dvec, p) *p = dvec->data; dvec_iter_fwd(dvec, (void **)p);
+
struct dvec {
size_t dsize;
size_t len, cap;
@@ -60,6 +63,12 @@ dvec_empty(struct dvec *dvec)
return !dvec->len;
}
+static inline size_t
+dvec_len(struct dvec *dvec)
+{
+ return dvec->len;
+}
+
static inline void *
dvec_add_slots(struct dvec *dvec, int *rc, size_t count)
{
@@ -78,7 +87,7 @@ dvec_add_slot(struct dvec *dvec, int *rc)
static inline void
dvec_rm_slots(struct dvec *dvec, void *slot, size_t count)
{
- dvec_remove(dvec, (slot - dvec->data) / dvec->dsize, count);
+ dvec_remove(dvec, ((size_t) (slot - dvec->data)) / dvec->dsize, count);
}
static inline void