From e9ecb318d3181676766641053b7ac444f74ef061 Mon Sep 17 00:00:00 2001 From: Tylo Date: Wed, 24 Jun 2020 17:51:45 +0200 Subject: Added shash_xx_make(initialSize) function, like cvector and carray also has. --- stc/chash.h | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/stc/chash.h b/stc/chash.h index 8e17d071..7c99c6a1 100644 --- a/stc/chash.h +++ b/stc/chash.h @@ -138,6 +138,8 @@ typedef struct { \ uint32_t hashx; \ } CHashBucket_##tag; \ \ +STC_API CHash_##tag \ +chash_##tag##_make(size_t initialSize); \ STC_API void \ chash_##tag##_destroy(CHash_##tag* self); \ STC_API void \ @@ -178,6 +180,13 @@ typedef Value CHashValue_##tag #define implement_CHash_11(tag, type, Key, Value, valueDestroy, keyHashRaw, keyEqualsRaw, \ keyDestroy, RawKey, keyGetRaw, keyInitRaw) \ \ +STC_API CHash_##tag \ +chash_##tag##_make(size_t initialSize) { \ + CHash_##tag h = chash_init; \ + chash_##tag##_reserve(&h, initialSize); \ + return h; \ +} \ + \ STC_API void \ chash_##tag##_destroy(CHash_##tag* self) { \ if (chash_size(*self)) { \ -- cgit v1.2.3