refactor(furc): unify visit functions in AST visitor

This commit is contained in:
2026-06-01 17:28:40 +02:00
parent 7caaaac4a0
commit 0958389b90
4 changed files with 42 additions and 42 deletions
+11 -11
View File
@@ -16,17 +16,17 @@ public:
visitor(const visitor&) = default;
visitor& operator=(const visitor&) = default;
public:
virtual void visit_string_literal_node(const string_literal_node&) {}
virtual void visit_integer_literal_node(const integer_literal_node&) {}
virtual void visit_var_read_expression_node(const var_read_expression_node&) {}
virtual void visit_unaryop_expression_node(const unaryop_expression_node&) {}
virtual void visit_binop_expression_node(const binop_expression_node&) {}
virtual void visit_var_assign_expression_node(const var_assign_expression_node&) {}
virtual void visit_function_declaration_node(const function_declaration_node&) {}
virtual void visit_function_definition_node(const function_definition_node&) {}
virtual void visit_return_statement_node(const return_statement_node&) {}
virtual void visit_if_statement_node(const if_statement_node&) {}
virtual void visit_compound_statement_node(const compound_statement_node&) {}
virtual void visit(const string_literal_node&) {}
virtual void visit(const integer_literal_node&) {}
virtual void visit(const var_read_expression_node&) {}
virtual void visit(const unaryop_expression_node&) {}
virtual void visit(const binop_expression_node&) {}
virtual void visit(const var_assign_expression_node&) {}
virtual void visit(const function_declaration_node&) {}
virtual void visit(const function_definition_node&) {}
virtual void visit(const return_statement_node&) {}
virtual void visit(const if_statement_node&) {}
virtual void visit(const compound_statement_node&) {}
virtual void visit_error(const node_handle<node>& handle) {}
};
+10 -10
View File
@@ -20,16 +20,16 @@ public:
public:
furlang::ir::module&& move_module() { return std::move(m_module); }
public:
void visit_function_definition_node(const ast::function_definition_node& funcDef) override;
void visit_return_statement_node(const ast::return_statement_node& returnStmt) override;
void visit_if_statement_node(const ast::if_statement_node& node) override;
void visit_compound_statement_node(const ast::compound_statement_node& node) override;
void visit_string_literal_node(const ast::string_literal_node& node) override;
void visit_integer_literal_node(const ast::integer_literal_node& node) override;
void visit_var_read_expression_node(const ast::var_read_expression_node& node) override;
void visit_unaryop_expression_node(const ast::unaryop_expression_node& node) override;
void visit_binop_expression_node(const ast::binop_expression_node& node) override;
void visit_var_assign_expression_node(const ast::var_assign_expression_node& node) override;
void visit(const ast::function_definition_node& funcDef) override;
void visit(const ast::return_statement_node& returnStmt) override;
void visit(const ast::if_statement_node& node) override;
void visit(const ast::compound_statement_node& node) override;
void visit(const ast::string_literal_node& node) override;
void visit(const ast::integer_literal_node& node) override;
void visit(const ast::var_read_expression_node& node) override;
void visit(const ast::unaryop_expression_node& node) override;
void visit(const ast::binop_expression_node& node) override;
void visit(const ast::var_assign_expression_node& node) override;
private:
furlang::ir::block_index push_block();
private: