aboutsummaryrefslogtreecommitdiff
path: root/interpreter/graphs.h
diff options
context:
space:
mode:
Diffstat (limited to 'interpreter/graphs.h')
-rw-r--r--interpreter/graphs.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/interpreter/graphs.h b/interpreter/graphs.h
index fcb314e..0cebe9e 100644
--- a/interpreter/graphs.h
+++ b/interpreter/graphs.h
@@ -10,6 +10,8 @@ typedef enum {
NODE_LIST,
NODE_TUPLE,
NODE_APP,
+
+ NODE_REDIRECT /* Redirect to another node */
} node_kind;
struct node {
@@ -22,6 +24,8 @@ struct node {
void use_node(struct node* node, unsigned int count);
void free_node(struct node* node, unsigned int count, unsigned free_first);
+void remove_redirects(struct node *node);
+
void cpy_expression_to_node(struct node* dst, expression* src);
void cpy_node_to_expression(expression* dst, struct node* src);