From 1bb2b6ccfc11d4aec61287441379cb6584b8fb5f Mon Sep 17 00:00:00 2001 From: Tavian Barnes Date: Thu, 31 Aug 2023 10:42:42 -0400 Subject: alloc: New varena_grow() function --- src/alloc.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/alloc.h') diff --git a/src/alloc.h b/src/alloc.h index b5dfa68..5f0c423 100644 --- a/src/alloc.h +++ b/src/alloc.h @@ -270,6 +270,20 @@ void *varena_alloc(struct varena *varena, size_t count); */ void *varena_realloc(struct varena *varena, void *ptr, size_t old_count, size_t new_count); +/** + * Grow a flexible struct by an arbitrary amount. + * + * @param varena + * The varena to allocate from. + * @param ptr + * The object to resize. + * @param count + * Pointer to the flexible array length. + * @return + * The resized struct, or NULL on failure. + */ +void *varena_grow(struct varena *varena, void *ptr, size_t *count); + /** * Free an arena-allocated flexible struct. * -- cgit v1.2.3