diff options
Diffstat (limited to 'src/ast.h')
-rw-r--r-- | src/ast.h | 38 |
1 files changed, 0 insertions, 38 deletions
diff --git a/src/ast.h b/src/ast.h deleted file mode 100644 index bd2e628..0000000 --- a/src/ast.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef AST_H -#define AST_H - -#include "lexer.h" - -typedef struct node_t *ast_t; -struct ast_node { - enum { - NODE_SEXP, - NODE_SYMBOL, - NODE_LITERAL, - } type; - - union { - struct sexp { - struct ast_node **children; - size_t nchildren; - } sexp; - - char *symbol; - - union { - enum { - NODE_LITERAL_NUM, - NODE_LITERAL_STR, - } type; - - int number; - char *string; - } literal; - }; -}; - -ast_t ast_create(); -void ast_destroy(ast_t ast); -int ast_parse_lexer(ast_t ast, lexer_t lex); - -#endif |