blob: e1c5fdd8167dee6ed9f39f7528c5e39085f7893b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
#include <stddef.h>
#ifndef MEMORY_H
#define MEMORY_H
typedef struct {
ptrdiff_t cap;
char *beg;
char *end;
} Arena;
Arena Arena_new(ptrdiff_t cap);
#define new(a, T, n) (T *)alloc(a, n, sizeof(T), _Alignof(T))
void *alloc(Arena *a, ptrdiff_t count, int size, int align);
int Arena_get_used(Arena a);
#endif
|