20 lines
319 B
C
20 lines
319 B
C
|
#ifndef RZ_HEAP_H
|
||
|
#define RZ_HEAP_H
|
||
|
|
||
|
#include "commons.h"
|
||
|
#include "value.h"
|
||
|
|
||
|
typedef struct {
|
||
|
size_t cap;
|
||
|
size_t size;
|
||
|
value_t** data;
|
||
|
} heap_t;
|
||
|
|
||
|
void heap_init(heap_t* heap);
|
||
|
void heap_free(heap_t* heap);
|
||
|
|
||
|
size_t heap_alloc(heap_t* heap, value_t* value);
|
||
|
value_t* heap_deref(heap_t* heap, size_t addr);
|
||
|
|
||
|
#endif
|