finish operation vector building

This commit is contained in:
2026-10-05 11:17:48 +03:00
parent f00ed50d32
commit bc4fbafec4
7 changed files with 412 additions and 60 deletions
+8 -8
View File
@@ -6,7 +6,7 @@
TEST(parser_proper_test_1)
{
auto o = Parser::tokenize_input("(1+2-c)");
Parser::print_token_vector(*o);
Parser::print_token_vector(o);
std::vector<Expression::Token> r;
@@ -18,7 +18,7 @@ TEST(parser_proper_test_1)
r.push_back(Expression::Token("c"));
r.push_back(Expression::Token(Expression::Token::CPA));
CHECK(Parser::assert_same(*o, r));
CHECK(Parser::assert_same(o, r));
return 0;
}
@@ -26,7 +26,7 @@ TEST(parser_proper_test_1)
TEST(parser_proper_test_2)
{
auto o = Parser::tokenize_input("(1**5,-snake+marble*34*(35 / 63.2))");
Parser::print_token_vector(*o);
Parser::print_token_vector(o);
std::vector<Expression::Token> r;
@@ -48,7 +48,7 @@ TEST(parser_proper_test_2)
r.push_back(Expression::Token(Expression::Token::CPA));
r.push_back(Expression::Token(Expression::Token::CPA));
CHECK(Parser::assert_same(*o, r));
CHECK(Parser::assert_same(o, r));
return 0;
}
@@ -56,7 +56,7 @@ TEST(parser_proper_test_2)
TEST(parser_proper_test_3)
{
auto o = Parser::tokenize_input(")))25.4,, 33..4 35 37 39 41 // +-*/***()()()");
Parser::print_token_vector(*o);
Parser::print_token_vector(o);
std::vector<Expression::Token> r;
@@ -83,15 +83,15 @@ TEST(parser_proper_test_3)
r.push_back(Expression::Token(Expression::Token::OPA));
r.push_back(Expression::Token(Expression::Token::CPA));
CHECK(Parser::assert_same(*o, r));
CHECK(Parser::assert_same(o, r));
return 0;
}
TEST(tree_proper_test_1)
{
auto o = Parser::tokenize_input("(1**5 * (1 + 2 + 3 + 4))");
Syntax::build_op_tree(*o);
std::vector<Expression::Token> o = Parser::tokenize_input("(1**5 * (1 - 2 - (3 + 4) - ((5 + 6) + (7 + 8))))");
std::vector<Expression::Operation> ov = Syntax::build_op_vector(o);
return 0;
}