view helper/helper.c @ 0:5695ef413be0

Initialized mono repo with bazels with few examples.
author June Park <parkjune1995@gmail.com>
date Tue, 23 Sep 2025 10:05:25 -0700
parents
children
line wrap: on
line source

#include "helper.h"

void ArenaIntialize(PArena p_arena, size_t capacity)
{
  p_arena = malloc(capacity);
  p_arena->offset = 0;
  p_arena->capacity = capacity;
}

void *ArenaAllocate(PArena p_arena, size_t size)
{
  if (p_arena->offset + size > p_arena->capacity)
  {
    return NULL;
  }
  void *currnet_ptr = p_arena->buffer + p_arena->offset;
  p_arena->offset += size;
  return currnet_ptr;
}

void *ArenaFree(PArena p_arena)
{
  if (p_arena) {
    free(p_arena->buffer);
    free(p_arena);
  }
  return;
}