mirror of
https://github.com/hazemKrimi/jack-vm-translator.git
synced 2026-05-01 18:00:27 +00:00
Operators wip
This commit is contained in:
@@ -1,36 +0,0 @@
|
||||
#include <iostream>
|
||||
#include <regex>
|
||||
#include <parser.h>
|
||||
#include <code.h>
|
||||
|
||||
using namespace std;
|
||||
|
||||
string constructTranslatedPath(string path) {
|
||||
size_t position = path.rfind(".vm");
|
||||
|
||||
return path.replace(position, 3, ".hack");
|
||||
}
|
||||
|
||||
int main(int argc, char* argv[])
|
||||
{
|
||||
string sourcePath = argv[1];
|
||||
|
||||
if (!regex_match(sourcePath, regex("^.+\\.vm"))) {
|
||||
cout << "Wrong file extension!" << endl;
|
||||
return 1;
|
||||
}
|
||||
|
||||
Parser parser(sourcePath);
|
||||
|
||||
vector<vector<string>> commands = parser.getCommands();
|
||||
|
||||
string translatedPath = constructTranslatedPath(sourcePath);
|
||||
|
||||
Code code(translatedPath, commands);
|
||||
|
||||
code.translate();
|
||||
|
||||
parser.closeFile();
|
||||
code.closeFile();
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user