ready to merge docs

This commit is contained in:
2024-08-11 08:37:17 +00:00
parent 9900d5aaf3
commit 22d18436fa
10 changed files with 346 additions and 38 deletions

View File

@ -3,6 +3,8 @@
#include <memory>
#include <variant>
#include <vector>
#include "../semantic/visitor.h"
#include "tools.h"
using IdentifierType = std::string;
struct ArrayType {
bool has_base_type;
@ -15,17 +17,15 @@ class ASTNodeVisitorBase {
virtual ~ASTNodeVisitorBase() = default;
virtual void visit(class ASTNodeBase *context) = 0;
};
enum class ASTNodeType {
};
class ASTNodeBase {
friend Visitor;
ASTNodeType type;
// std::vector<std::shared_ptr<ASTNodeBase>> children;
size_t start_line, start_char_pos, end_line, end_char_pos;
public:
virtual ~ASTNodeBase() = default;
virtual void accept(class ASTNodeVisitorBase *visitor) = 0;
// virtual void accept(class ASTNodeVisitorBase *visitor) = 0;
};
#endif