Added deinit command to free the memory
This commit is contained in:
parent
c80b38d82d
commit
c0edd1cf07
2 changed files with 6 additions and 1 deletions
|
|
@ -60,6 +60,10 @@ void dyn_arr_pop(void *array, size_t item_size) {
|
|||
header = realloc(dyna_get_header(array), new_size);
|
||||
}
|
||||
|
||||
void dyna_deinit(void *array) {
|
||||
free(dyna_get_header(array));
|
||||
}
|
||||
|
||||
bool dyna_empty(void *array) {
|
||||
if (dyna_length(array) == 0) {
|
||||
return true;
|
||||
|
|
|
|||
|
|
@ -13,7 +13,6 @@
|
|||
* - clear aka erase
|
||||
* - insert
|
||||
* - (optional) insert range
|
||||
* - pop
|
||||
* - (optional) swap
|
||||
* - (optional) resize
|
||||
* - Sanity checks
|
||||
|
|
@ -41,6 +40,8 @@ void *dyna_ensure_capacity(void *array, size_t item_count, size_t item_size);
|
|||
#define dyna_pop(array) dyn_arr_pop(array, sizeof(typeof(*array)))
|
||||
void dyn_arr_pop(void *array, size_t item_size);
|
||||
|
||||
void dyna_deinit(void *array);
|
||||
|
||||
// Get meta data
|
||||
#define dyna_get_header(array) ((dyna_header *)(array)-1)
|
||||
#define dyna_length(array) (dyna_get_header(array)->length)
|
||||
|
|
|
|||
Loading…
Reference in a new issue