.
This commit is contained in:
33
lib/priv.h
33
lib/priv.h
@@ -52,20 +52,20 @@ Stack* stack_new(void);
|
||||
void stack_destroy(Stack* s);
|
||||
|
||||
TYC_RESULT stack_push(Stack* s, VALUE v);
|
||||
TYC_RESULT stack_peek(Stack* s, VALUE* v_out);
|
||||
TYC_RESULT stack_peek(Stack const* s, VALUE* v_out);
|
||||
TYC_RESULT stack_pop(Stack* s, VALUE* v_out);
|
||||
|
||||
size_t stack_len(Stack* s);
|
||||
size_t stack_len(Stack const* s);
|
||||
|
||||
TYC_RESULT stack_at(Stack* s, int32_t key, VALUE* v);
|
||||
TYC_RESULT stack_at(Stack const* s, int32_t key, VALUE* v);
|
||||
TYC_RESULT stack_set(Stack* s, int32_t key, VALUE v);
|
||||
|
||||
size_t stack_top_fp(Stack* s);
|
||||
size_t stack_top_fp(Stack const* s);
|
||||
TYC_RESULT stack_push_fp(Stack* s);
|
||||
TYC_RESULT stack_pop_fp(Stack* s);
|
||||
size_t stack_fp_level(Stack* s);
|
||||
size_t stack_fp_level(Stack const* s);
|
||||
|
||||
size_t stack_collectable_array(Stack* s, VALUE** values);
|
||||
size_t stack_collectable_array(Stack const* s, VALUE** values);
|
||||
|
||||
//
|
||||
// HEAP ARRAY
|
||||
@@ -76,11 +76,24 @@ typedef struct Array Array;
|
||||
Array* array_new(void);
|
||||
void array_destroy(Array* a);
|
||||
|
||||
size_t array_len(Array* a);
|
||||
VALUE array_get(Array* a, size_t pos);
|
||||
size_t array_len(Array const* a);
|
||||
VALUE array_get(Array const* a, size_t pos);
|
||||
void array_set(Array* a, size_t pos, VALUE v);
|
||||
void array_append(Array* a, VALUE v);
|
||||
|
||||
//
|
||||
// HEAP TABLE
|
||||
//
|
||||
|
||||
typedef struct Table Table;
|
||||
|
||||
Table* table_new(void);
|
||||
void table_destroy(Table* t);
|
||||
|
||||
size_t table_len(Table* t);
|
||||
VALUE table_get(Table const* t, VALUE key);
|
||||
void table_set(Table* t, VALUE key, VALUE value);
|
||||
|
||||
//
|
||||
// HEAP
|
||||
//
|
||||
@@ -93,9 +106,9 @@ Heap* heap_new(void);
|
||||
void heap_destroy(Heap* h);
|
||||
|
||||
HEAP_KEY heap_add_string(Heap* h, const char* value);
|
||||
TYC_RESULT heap_get_string(Heap* h, HEAP_KEY key, const char** value);
|
||||
TYC_RESULT heap_get_string(Heap const* h, HEAP_KEY key, const char** value);
|
||||
|
||||
size_t heap_size(Heap* h);
|
||||
size_t heap_size(Heap const* h);
|
||||
|
||||
void heap_gc(Heap* h, VALUE const* roots, size_t n_roots);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user