#pragma once #include "NodeVisitor.h" #include #include namespace sqlast { class BuildStandardItemTreeModelNodeVisitor : public NodeVisitor { public: BuildStandardItemTreeModelNodeVisitor(); // NodeVisitor interface public: virtual void Visit(SelectItem &selectItem) override; virtual void Visit(SelectList &selectList) override; virtual void Visit(SelectStatement &selectStatement) override; virtual void Visit(StatementList &statementList) override; virtual void Visit(StringLiteral &stringLiteral) override; private: std::unique_ptr model; QStandardItem *currentParent; }; }