summaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
Diffstat (limited to 'src/include')
-rw-r--r--src/include/ast.h2
-rw-r--r--src/include/hash_table.h3
-rw-r--r--src/include/parser.h2
-rw-r--r--src/include/stack.h2
4 files changed, 9 insertions, 0 deletions
diff --git a/src/include/ast.h b/src/include/ast.h
index 8b60490..d330ee5 100644
--- a/src/include/ast.h
+++ b/src/include/ast.h
@@ -54,4 +54,6 @@ ast_t *init_ast_root(ast_t **subnodes, int size);
void ast_type_print(ast_t *e);
bool is_proper_list(ast_t *e);
+
+void ast_free(ast_t *e);
#endif
diff --git a/src/include/hash_table.h b/src/include/hash_table.h
index 833daee..b70331e 100644
--- a/src/include/hash_table.h
+++ b/src/include/hash_table.h
@@ -36,6 +36,8 @@ bool sl_list_exists(sl_list_t *l, char *key);
void sl_list_free(sl_list_t *l);
+void sl_list_free_some(sl_list_t *l);
+
hash_table_t *init_hash_table(int size);
void hash_table_add(hash_table_t *h, char *key, ast_t *value);
@@ -48,4 +50,5 @@ unsigned long hash(char *key, int size);
void hash_table_free(hash_table_t *h);
+void hash_table_free_some(hash_table_t *h);
#endif
diff --git a/src/include/parser.h b/src/include/parser.h
index 7b26696..d159646 100644
--- a/src/include/parser.h
+++ b/src/include/parser.h
@@ -45,4 +45,6 @@ void parse_bind(parser_t *parser);
ast_t *parse_expr(parser_t *parser);
ast_t *parse_all(parser_t *parser);
+
+void parser_free(parser_t *parser);
#endif
diff --git a/src/include/stack.h b/src/include/stack.h
index 6b0ed9a..e5630fc 100644
--- a/src/include/stack.h
+++ b/src/include/stack.h
@@ -15,4 +15,6 @@ hash_table_t *stack_peek(stack_t *s);
hash_table_t *stack_pop(stack_t *s);
bool is_empty(stack_t *s);
+
+void stack_free(stack_t *s);
#endif