From 036e7efcb9f4e80c8d76b9d1486c122915b702a1 Mon Sep 17 00:00:00 2001 From: _ov4 Date: Sat, 5 Sep 2026 15:13:01 +0000 Subject: parser working --- ast.cc | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'ast.cc') diff --git a/ast.cc b/ast.cc index a0af720..66bd451 100644 --- a/ast.cc +++ b/ast.cc @@ -21,7 +21,7 @@ constexpr int MAXLINE = 1024; int main() { - int test_case = 3; + int test_case = 4; string s; switch (test_case) @@ -38,6 +38,9 @@ int main() case 3: s = "hi (hello || foo)"; break; + case 4: + s = "alpha || beta (gamma && (delta || epsilon & ) )"; + break; default: return 0; } @@ -45,7 +48,7 @@ int main() tokenizer(s); - cout << "----------" << endl; + cout << "---------- tokenizer ----------" << endl; for (auto c : token) { if (c.token_type == LOGIC_AND) @@ -63,5 +66,9 @@ int main() else if (c.token_type == TEXT) println("{} TEXT {}", c.bracket_depth, c.text); } + + cout << "---------- parse ----------" << endl; + + parse(0, token.size(), alloc_ast()); return 0; } -- cgit v1.3.1-4-g156e