15 std::unique_ptr<AST::Program>
parse();
37 std::unique_ptr<AST::Statement>
statement();
46 std::unique_ptr<AST::BlockStmt>
block();
50 std::unique_ptr<AST::TypeNode>
parseType();
53 std::unique_ptr<AST::Expression>
logicalOr();
55 std::unique_ptr<AST::Expression>
equality();
57 std::unique_ptr<AST::Expression>
term();
58 std::unique_ptr<AST::Expression>
factor();
59 std::unique_ptr<AST::Expression>
unary();
60 std::unique_ptr<AST::Expression>
call();
61 std::unique_ptr<AST::Expression>
finishCall(std::unique_ptr<AST::Expression> callee);
62 std::unique_ptr<AST::Expression>
primary();
65 std::unique_ptr<AST::Expression>
fieldAccess(std::unique_ptr<AST::Expression>
object);