comparison dowa/d_memory.c @ 1:adcfad6e86fb

Updated naming and separated out some logic within seobeo.
author June Park <parkjune1995@gmail.com>
date Wed, 24 Sep 2025 09:11:20 -0700
parents
children 8a43dedbe530
comparison
equal deleted inserted replaced
0:5695ef413be0 1:adcfad6e86fb
1 #include "dowa.h"
2
3 // --- Arena --- //
4 void Dowa_ArenaIntialize(PArena p_arena, size_t capacity)
5 {
6 p_arena = malloc(capacity);
7 p_arena->offset = 0;
8 p_arena->capacity = capacity;
9 }
10
11 void *Dowa_ArenaAllocate(PArena p_arena, size_t size)
12 {
13 if (p_arena->offset + size > p_arena->capacity)
14 {
15 return NULL;
16 }
17 void *currnet_ptr = p_arena->buffer + p_arena->offset;
18 p_arena->offset += size;
19 return currnet_ptr;
20 }
21
22 void Dowa_ArenaFree(PArena p_arena)
23 {
24 if (p_arena) {
25 free(p_arena->buffer);
26 free(p_arena);
27 }
28 }