This commit is contained in:
eelke 2022-04-07 19:35:29 +02:00
parent 0da32b916c
commit 698ccab6ab
20 changed files with 265 additions and 37 deletions

View file

@ -1,12 +1,25 @@
#pragma once
#include <QString>
#include <stdexcept>
#include <typeinfo>
namespace sqlast {
class NodeVisitor;
class Node {
public:
Node();
virtual ~Node() = default;
virtual void Accept(NodeVisitor &visitor) = 0;
/// Every derived class that has child nodes should override these
/// to facilitate
// virtual int ChildCount() const { return 0; }
// virtual const Node* GetChild(int index) const { throw std::out_of_range("GetChild"); }
virtual QString ToString() const;
};
}