memgraph/query_engine/query_engine.hpp

34 lines
606 B
C++
Raw Normal View History

#pragma once
#include <iostream>
#include "query_traverser.hpp"
#include "code_generator.hpp"
#include "code_compiler.hpp"
#include "query_executor.hpp"
#include "query_result.hpp"
using std::cout;
using std::endl;
//
// Current arhitecture:
// query -> traverser -> [generator] -> [compiler] -> executor
//
class QueryEngine
{
public:
QueryResult execute(const std::string& query)
{
cout << "execute: " << query << endl;
return QueryResult();
}
private:
QueryTraverser traverser;
CodeGenerator generator;
CodeCompiler compiler;
QueryExecutor executor;
};