diff options
Diffstat (limited to 'ast.c')
-rw-r--r-- | ast.c | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -2,6 +2,7 @@ #include <stdlib.h> #include <stddef.h> #include <stdio.h> +#include <assert.h> AstVec astvec_new() { AstNode *vals = malloc(2 * sizeof(AstNode)); @@ -23,6 +24,12 @@ void astvec_append(AstVec *v, AstNode val) { v->len ++; } +void astnode_append(AstNode *l, AstNode val) { + printf(" astnode_append: %d\n",l->ty); + assert(l->ty == AST_LIST); + astvec_append(&l->as.list, val); +} + AstNode astnode_new_num(int n) { return (AstNode){ .ty = AST_NUM, @@ -41,6 +48,3 @@ AstNode astnode_new_list() { }; } - - - |