Bemanitools v5.26 release

This commit is contained in:
icex2
2019-09-27 22:36:50 +02:00
commit cbd7720349
718 changed files with 62731 additions and 0 deletions
+29
View File
@@ -0,0 +1,29 @@
#ifndef UTIL_ARRAY_H
#define UTIL_ARRAY_H
#include <stddef.h>
struct array {
void *items;
size_t nitems;
size_t nalloced;
};
#define array_item(type, array, i) \
(&(((type *) (array)->items)[i]))
#define array_reserve(type, array, nitems) \
((type *) array_reserve_(sizeof(type), array, nitems))
#define array_remove(type, array, i) \
array_remove_(sizeof(type), array, i)
#define array_append(type, array) \
array_reserve(type, array, 1)
void array_init(struct array *array);
void *array_reserve_(size_t itemsz, struct array *array, size_t nitems);
void array_remove_(size_t itemsz, struct array *array, size_t i);
void array_fini(struct array *array);
#endif