2026-10-05 21:11:17 +03:00
|
|
|
#include "parser.hpp"
|
|
|
|
|
#include "syntaxer.hpp"
|
|
|
|
|
|
|
|
|
|
int main(int argc, char **argv)
|
|
|
|
|
{
|
|
|
|
|
if (argc != 2)
|
|
|
|
|
{
|
|
|
|
|
return 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
std::vector<Expression::Token> tv = Parser::tokenize_input(argv[1]);
|
2026-10-06 21:02:40 +03:00
|
|
|
|
|
|
|
|
if (Syntax::check_syntax(tv))
|
|
|
|
|
{
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
|
|
|
|
|
2026-10-05 21:11:17 +03:00
|
|
|
Syntax::apply_corrections(tv);
|
2026-10-06 21:02:40 +03:00
|
|
|
|
2026-10-05 21:11:17 +03:00
|
|
|
std::vector<Expression::Operation> ov = Syntax::build_op_vector(tv);
|
2026-10-07 16:15:42 +03:00
|
|
|
|
|
|
|
|
Expression::TreeNode root = Syntax::ov_to_tree(tv, ov);
|
2026-10-05 21:11:17 +03:00
|
|
|
}
|