Files
mop3/libarena/arena.h
kamkow1 25b289ccfb
All checks were successful
Build documentation / build-and-deploy (push) Successful in 2m11s
CE edit command
2026-03-05 16:29:59 +01:00

29 lines
562 B
C

#ifndef _LIBARENA_ARENA_H
#define _LIBARENA_ARENA_H
#include <stddef.h>
#include <stdint.h>
#define ARENA_CHUNK_CAPACITY (1024 * 1024)
struct arena_chunk {
struct arena_chunk* next;
size_t capacity;
size_t size;
uintptr_t memory[];
};
struct arena {
struct arena_chunk *begin, *end;
};
void arena_reset (struct arena* arena);
void arena_destroy (struct arena* arena);
void* arena_malloc (struct arena* arena, size_t size);
void* arena_realloc (struct arena* arena, void* memory, size_t prev_size, size_t new_size);
#endif // _LIBARENA_ARENA_H