]> git.lizzy.rs Git - dragonstd.git/blob - array.h
Replace DRAGONTYPE_ARRAY_REALLOC_EXTRA by DRAGONSTD_ARRAY_REALLOC_EXTRA
[dragonstd.git] / array.h
1 #ifndef _DRAGONSTD_ARRAY_H_
2 #define _DRAGONSTD_ARRAY_H_
3
4 #ifndef DRAGONSTD_ARRAY_REALLOC_EXTRA
5 #define DRAGONSTD_ARRAY_REALLOC_EXTRA 25
6 #endif
7
8 #include <stddef.h>
9 #include <stdbool.h>
10
11 typedef struct
12 {
13         size_t membsiz;
14         size_t siz, cap;
15         void *ptr;
16 } Array;
17
18 Array array_create(size_t membsiz);
19 void array_insert(Array *array, void *elem, size_t idx);
20 void array_append(Array *array, void *elem);
21 void array_copy(Array *array, void **ptr, size_t *count);
22
23 #endif