Tree setup now working on all compilation units

This commit is contained in:
rexy712
2020-01-17 14:22:15 -08:00
parent 0b4562a95a
commit 45ed17d6ca
6 changed files with 73 additions and 43 deletions

View File

@@ -161,6 +161,7 @@ RJP_value* rjp_get_member(RJP_object_iterator* object);
RJP_object_iterator* rjp_get_object_iterator(const RJP_value* object);
RJP_value* rjp_object_iterator_current(RJP_object_iterator* it);
RJP_value* rjp_object_iterator_next(RJP_object_iterator* it);
RJP_value* rjp_object_iterator_peek(RJP_object_iterator* it);
void rjp_free_object_iterator(RJP_object_iterator* it);
//Return number of members in the object
RJP_index rjp_num_members(const RJP_value* object);

View File

@@ -46,12 +46,11 @@ typedef struct RJP_tree_stack{
}RJP_tree_stack;
typedef struct RJP_object_iterator{
RJP_tree_stack stack;
RJP_tree_node* current;
}RJP_object_iterator;
RJP_tree_node* irjp_new_node(RJP_object_member* value);
RJP_tree_node* irjp_tree_insert_value(RJP_tree_node* root, RJP_object_member* value, int* status);
RJP_tree_node* irjp_tree_insert_value(RJP_tree_node* root, RJP_object_member* value, RJP_value** added, int* status);
RJP_tree_node* irjp_tree_remove_value(RJP_tree_node* root, const char* key, int* status);
RJP_tree_node* irjp_tree_search_value(RJP_tree_node* root, const char* key);
RJP_tree_node* irjp_copy_tree(const RJP_tree_node* root);
@@ -60,6 +59,7 @@ void irjp_free_tree(RJP_tree_node* root);
int irjp_init_object_iterator(RJP_object_iterator* it, const RJP_tree_node* root);
void irjp_delete_object_iterator(RJP_object_iterator* it);
RJP_tree_node* irjp_object_iterator_next(RJP_object_iterator* it);
RJP_tree_node* irjp_object_iterator_peek(RJP_object_iterator* it);
RJP_tree_node* irjp_object_iterator_current(RJP_object_iterator* it);
void irjp_dbg_print_tree(RJP_tree_node* root);