diff options
Diffstat (limited to 'dynarray.h')
-rw-r--r-- | dynarray.h | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/dynarray.h b/dynarray.h deleted file mode 100644 index 9ff1289..0000000 --- a/dynarray.h +++ /dev/null @@ -1,32 +0,0 @@ - -#define MAX(a, b) ((a) > (b) ? (a) : (b)) -#define MIN(a, b) ((a) < (b) ? (a) : (b)) - -#define DEFINE_DYNARRAY(name, type) \ - type *name; \ - int name ## _len; \ - int name ## _size; - -#define RESIZE_DYNARRAY(name, desired_len) { \ - int orig_size = name ## _size; \ - while(name ## _size < (desired_len)) \ - name ## _size *= 2; \ - /* don't bother shrinking for now. when/if we do, we'll want to bake in \ - * some kind of hysteresis so that we don't shrink until we've been under \ - * for a while. */ \ - if(name ## _size != orig_size) \ - name = realloc(name, name ## _size * sizeof(*name)); \ - name ## _len = desired_len; \ -} - -#define INIT_DYNARRAY(name, initial_len, initial_size) \ - name ## _len = initial_len; \ - name ## _size = initial_size; \ - name = realloc(NULL, name ## _size * sizeof(*name)) - -#define FREE_DYNARRAY(name) \ - free(name); - -#define DYNARRAY_GET_TOP(name) \ - (&name[name ## _len - 1]) - |