PC_graph/parser.h
2024-11-28 17:30:29 +01:00

19 lines
578 B
C

#ifndef PARSER_H
#define PARSER_H
#include "tree.h"
#include "lex.h"
struct parser {
struct lexer lexer;
struct error_buffer eb;
};
void parser_init(struct parser *parser);
int parser_parse_n(struct parser *parser, const char *str, const char *variable_name, struct expr_node **out_nodes, size_t n);
struct expr_node *parser_parse(struct parser *parser, const char *str, const char *variable_name);
enum error_code parser_get_error(const struct parser *parser);
const char *parser_get_error_text(const struct parser *parser);
#endif /* PARSER_H */