Lexesis/include/Lexesis/driver.h

29 lines
651 B
C++

#pragma once
#ifndef LEXESIS_DRIVER_H
#define LEXESIS_DRIVER_H
#include <memory>
#include <string>
#include "Lexesis/backendmanager.h"
namespace lxs {
class Driver {
public:
Driver(std::unique_ptr<BackendManager> backends, std::istream& inputfile, std::string outputdir, std::string language, std::string lexername);
~Driver();
int run();
private:
std::unique_ptr<BackendManager> m_backends;
std::istream& m_inputfile;
std::string m_outputdir;
std::string m_language;
std::string m_lexername;
};
}
#endif //LEXESIS_DRIVER_H