23#include "../../libft/libft.h"
90 ptr = ft_calloc(nmemb, size);
128 next = current->
next;
void * gc_register(t_gc *gc, void *ptr)
Mevcut bir pointer'ı GC'ye kaydeder (dışarıda malloc edilmiş).
void * gc_alloc(t_gc *gc, size_t size)
malloc + GC'ye kayıt — free gerekmez
static t_gc_node * gc_add_node(t_gc *gc, void *ptr)
Yeni bir gc_node oluşturup ptr'yi kaydeder.
void gc_init(t_gc *gc)
GC yapısını ilk duruma getirir.
void gc_free_all(t_gc *gc)
GC'deki tüm kayıtlı pointer'ları serbest bırakır.
void * gc_calloc(t_gc *gc, size_t nmemb, size_t size)
ft_calloc + GC'ye kayıt — sıfırlanmış bellek, free gerekmez
Arena-based garbage collector header.
struct s_gc t_gc
GC ana yapısı — allocation listesinin başını tutar.
struct s_gc_node t_gc_node
GC düğüm yapısı — tek bir allocation'ı temsil eder.