From f04e2ec242daa3cda4c8d09c41b1d2b2c9d9fbe3 Mon Sep 17 00:00:00 2001 From: Tylo Date: Fri, 5 Jun 2020 12:13:45 +0200 Subject: Added siphash to crandom.h and some small enhancements. --- stc/cvector.h | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) (limited to 'stc/cvector.h') diff --git a/stc/cvector.h b/stc/cvector.h index 27caca6a..292954b1 100644 --- a/stc/cvector.h +++ b/stc/cvector.h @@ -94,8 +94,12 @@ typedef struct { \ Value *item, *end; \ } CVectorIter_##tag, cvector_##tag##_iter_t; \ \ -STC_API cvector_##tag##_iter_t \ -cvector_##tag##_begin(CVector_##tag* vec); \ +static inline cvector_##tag##_iter_t \ +cvector_##tag##_begin(CVector_##tag* vec) { \ + const size_t n = cvector_size(*vec); \ + cvector_##tag##_iter_t it = {n ? vec->data : NULL, vec->data + n}; \ + return it; \ +} \ \ static inline cvector_##tag##_iter_t \ cvector_##tag##_next(cvector_##tag##_iter_t it) { \ @@ -190,15 +194,8 @@ STC_API void \ cvector_##tag##_sort(CVector_##tag* self) { \ size_t len = cvector_size(*self); \ if (len) qsort(self->data, len, sizeof(Value), cvector_##tag##_sortCompare); \ -} \ - \ -STC_API cvector_##tag##_iter_t \ -cvector_##tag##_begin(CVector_##tag* vec) { \ - cvector_##tag##_iter_t it; \ - it.item = vec->data, it.end = it.item + cvector_size(*vec); \ - if (it.item == it.end) it.item = NULL; \ - return it; \ } + #else #define implement_CVector_6(tag, Value, valueDestroy, RawValue, valueCompareRaw, valueGetRaw) #endif -- cgit v1.2.3