#ifndef _ARRAY
#define _ARRAY

#include "Types.h"
#include "BumpAlloc.h"

typedef void* Array;

Array  A_new(BumpArena b, usize element_size, usize length);
usize  A_length(Array arr);
usize  A_count(Array arr);
Result A_push(Array arr, void *value);
Result A_ppush(Array arr, void *value);
void*  A_pop(Array arr);

Array AG_new(usize element_size, usize length);

#endif /* _ARRAY */
