Условные конструкции, циклы, массивы и библтотеки

This commit is contained in:
SkrinVex
2025-12-25 16:59:15 +05:00
parent 8ca31ea877
commit 47368b374f
12 changed files with 599 additions and 172 deletions
+11 -4
View File
@@ -10,20 +10,27 @@ int main(int argc, char* argv[]) {
return 1;
}
// 1. Читаем файл
std::ifstream file(argv[1]);
if (!file.is_open()) {
std::cerr << "Error: File not found!" << std::endl;
std::cerr << "Error: Could not open file " << argv[1] << std::endl;
return 1;
}
std::stringstream buffer;
buffer << file.rdbuf();
std::string code = buffer.str();
Lexer lexer(buffer.str());
auto tokens = lexer.tokenize();
// 2. Запускаем конвейер
Lexer lexer(code);
std::vector<Token> tokens = lexer.tokenize();
Parser parser(tokens);
// ВАЖНО: Передаем имя файла, чтобы парсер знал, где он находится
parser.currentFile = argv[1];
parser.run();
return 0;
}
}