From f44f1f8c7ef7b6266667dce76db686af3258adfc Mon Sep 17 00:00:00 2001 From: jdlugosz963 Date: Wed, 1 Mar 2023 23:30:31 +0100 Subject: Build simple abstract syntax tree --- parser.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 parser.h (limited to 'parser.h') diff --git a/parser.h b/parser.h new file mode 100644 index 0000000..2a4c523 --- /dev/null +++ b/parser.h @@ -0,0 +1,18 @@ +#ifndef _PARSER +#define _PARSER + +#include "types.h" +#include "lexer.h" + +LISP_OBJECT *parser_parse_str(char *str); +LISP_OBJECT *parser_parse_tokens(Token **token); + +LISP_OBJECT *parser_make_list(Token **token); +LISP_OBJECT *parser_make_number(Token **token); +LISP_OBJECT *parser_make_string(Token **token); +LISP_OBJECT *parser_make_symbol(Token **token); +LISP_OBJECT *parser_make_true(Token **token); +LISP_OBJECT *parser_make_false(Token **token); +LISP_OBJECT *parser_make_nil(Token **token); + +#endif -- cgit v1.2.3