pgLab/pglablib/sqlast/BuildStandardItemTreeModelNodeVisitor.h
2022-04-07 19:35:29 +02:00

28 lines
731 B
C++

#pragma once
#include "NodeVisitor.h"
#include <QStandardItemModel>
#include <memory>
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<QStandardItemModel> model;
QStandardItem *currentParent;
};
}