From 16ebb96a2d8ec6bd7bc695a9c21754976b9476ec Mon Sep 17 00:00:00 2001 From: SkrinVex Date: Fri, 26 Dec 2025 00:06:25 +0500 Subject: [PATCH] addding return --- foxlang | Bin 439560 -> 463552 bytes src/AST.h | 394 +++++++++++++++++++++++------------------------- src/Lexer.cpp | 15 +- src/Parser.cpp | 292 ++++++++++++++++++----------------- src/Token.h | 15 +- test/return.fox | 24 +++ 6 files changed, 383 insertions(+), 357 deletions(-) create mode 100644 test/return.fox diff --git a/foxlang b/foxlang index fb53c705b180fbcdb6e71e5ea9c28ca8b66eb7a0..b943f788126b4f71e8434aa92f09a88a69f627c1 100755 GIT binary patch literal 463552 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⪻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
    bej<->`F|t7h3$ju9=Tg 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 k?wou`X;<92^Dwy}`RASg4^`Vz0RR91 literal 439560 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 variables; - std::map> functions; - // МАССИВЫ: Имя -> Вектор значений + std::map> functions; // Храним функции std::map> arrays; bool exists(const std::string& name) { - return variables.count(name) || arrays.count(name); + if (variables.count(name) || arrays.count(name)) return true; + if (parent) return parent->exists(name); + return false; } + + std::string getVar(const std::string& name) { + if (variables.count(name)) return variables[name]; + if (parent) return parent->getVar(name); + std::cerr << "Runtime Error: Variable '" << name << "' not found." << std::endl; exit(1); + } + + std::vector& getArray(const std::string& name) { + if (arrays.count(name)) return arrays[name]; + if (parent) return parent->getArray(name); + std::cerr << "Runtime Error: Array '" << name << "' not found." << std::endl; exit(1); + } + + void setVar(const std::string& name, const std::string& val) { + if (variables.count(name)) { variables[name] = val; return; } + if (parent) { parent->setVar(name, val); return; } + std::cerr << "Runtime Error: Variable '" << name << "' not defined." << std::endl; exit(1); + } + + void defineVar(const std::string& name, const std::string& val) { + if (variables.count(name)) { + std::cerr << "Runtime Error: Variable '" << name << "' already defined." << std::endl; exit(1); + } + variables[name] = val; + } + + void defineGlobal(const std::string& name, const std::string& val) { + if (parent) parent->defineGlobal(name, val); + else defineVar(name, val); + } + + std::shared_ptr getFunc(const std::string& name) { + if (functions.count(name)) return functions[name]; + if (parent) return parent->getFunc(name); + return nullptr; + } + + void defineFunc(const std::string& name, std::shared_ptr body) { + functions[name] = body; + } +}; + +// Специальный тип для RETURN +struct ReturnValue { + std::string value; }; static std::string formatNumber(double val) { @@ -36,7 +88,77 @@ struct Node { virtual std::string eval(Context& ctx) = 0; }; -// --- БАЗОВЫЕ НОДЫ (Без изменений) --- +// --- ОСНОВНЫЕ УЗЛЫ --- + +// Определение функции +struct FuncDefNode : Node { + std::string returnType; + std::string name; + std::vector params; + std::shared_ptr body; + + FuncDefNode(std::string rt, std::string n, std::vector p, std::shared_ptr b) + : returnType(rt), name(n), params(p), body(b) {} + + // Eval ничего не делает, функция регистрируется Парсером + std::string eval(Context& ctx) override { return ""; } +}; + +// RETURN - выбрасывает исключение с значением +struct ReturnNode : Node { + std::unique_ptr expr; + ReturnNode(std::unique_ptr e) : expr(std::move(e)) {} + std::string eval(Context& ctx) override { + std::string result = expr ? expr->eval(ctx) : "0"; + throw ReturnValue{result}; + } +}; + +// ВЫЗОВ ФУНКЦИИ - самое важное для тебя! +struct FuncCallNode : Node { + std::string name; + std::vector> args; + + FuncCallNode(std::string n, std::vector> a) + : name(n), args(std::move(a)) {} + + std::string eval(Context& ctx) override { + auto funcNodeBase = ctx.getFunc(name); + if (!funcNodeBase) { + std::cerr << "Runtime Error: Function '" << name << "' not found." << std::endl; exit(1); + } + + FuncDefNode* funcDef = static_cast(funcNodeBase.get()); + + if (args.size() != funcDef->params.size()) { + std::cerr << "Args count mismatch for '" << name << "'" << std::endl; exit(1); + } + + std::vector argValues; + for (auto& arg : args) argValues.push_back(arg->eval(ctx)); + + // Находим глобальный контекст + Context* root = &ctx; + while (root->parent != nullptr) root = root->parent; + + // Создаем локальную область видимости + Context funcScope; + funcScope.parent = root; + + for (size_t i = 0; i < funcDef->params.size(); i++) { + funcScope.defineVar(funcDef->params[i].name, argValues[i]); + } + + try { + funcDef->body->eval(funcScope); + } catch (const ReturnValue& ret) { + return ret.value; // ВОЗВРАЩАЕМ ЗНАЧЕНИЕ В ПЕРЕМЕННУЮ + } + + return "0"; + } +}; + struct NumberNode : Node { std::string val; NumberNode(std::string v) : val(v) {} @@ -50,185 +172,35 @@ struct StringNode : Node { struct VarAccessNode : Node { std::string name; VarAccessNode(std::string n) : name(n) {} - std::string eval(Context& ctx) override { - if (ctx.variables.find(name) == ctx.variables.end()) { - // Проверка, может это массив? - if(ctx.arrays.count(name)) return "ARRAY:" + name; - std::cerr << "Runtime Error: Var '" << name << "' not found." << std::endl; exit(1); - } - return ctx.variables[name]; - } + std::string eval(Context& ctx) override { return ctx.getVar(name); } }; - -// --- ЛОГИКА И УПРАВЛЕНИЕ --- - -// Сравнение: ==, !=, <, > -// Сравнение: ==, !=, <, > -struct CompareNode : Node { - std::string op; - std::unique_ptr left, right; - CompareNode(std::string o, std::unique_ptr l, std::unique_ptr r) - : op(o), left(std::move(l)), right(std::move(r)) {} - +struct GlobalVarDeclNode : Node { + std::string type, name; std::unique_ptr expr; + GlobalVarDeclNode(std::string t, std::string n, std::unique_ptr e) : type(t), name(n), expr(std::move(e)) {} std::string eval(Context& ctx) override { - std::string lStr = left->eval(ctx); - std::string rStr = right->eval(ctx); - - // Проверяем, являются ли значения числами - bool lIsNum = (lStr.find_first_not_of("0123456789.-") == std::string::npos); - bool rIsNum = (rStr.find_first_not_of("0123456789.-") == std::string::npos); - - // Если хотя бы одно значение - текст, сравниваем как СТРОКИ - if (!lIsNum || !rIsNum) { - if (op == "==") return (lStr == rStr) ? "1" : "0"; - if (op == "!=") return (lStr != rStr) ? "1" : "0"; - // Для строк операции > и < работают лексикографически (по алфавиту) - if (op == "<") return (lStr < rStr) ? "1" : "0"; - if (op == ">") return (lStr > rStr) ? "1" : "0"; - return "0"; - } - - // Если оба числа - переводим в double и сравниваем математически - double l = std::stod(lStr); - double r = std::stod(rStr); - - if (op == "==") return (std::abs(l - r) < 0.00001) ? "1" : "0"; - if (op == "!=") return (std::abs(l - r) > 0.00001) ? "1" : "0"; - if (op == "<") return (l < r) ? "1" : "0"; - if (op == ">") return (l > r) ? "1" : "0"; - return "0"; - } -}; - -// IF / ELSE -struct IfNode : Node { - std::unique_ptr condition; - std::unique_ptr thenBlock; - std::unique_ptr elseBlock; // Может быть nullptr - - IfNode(std::unique_ptr c, std::unique_ptr t, std::unique_ptr e) - : condition(std::move(c)), thenBlock(std::move(t)), elseBlock(std::move(e)) {} - - std::string eval(Context& ctx) override { - std::string res = condition->eval(ctx); - if (res == "1") { // Истина - thenBlock->eval(ctx); - } else if (elseBlock) { - elseBlock->eval(ctx); - } + Context* root = &ctx; + while (root->parent != nullptr) root = root->parent; + root->defineVar(name, expr->eval(ctx)); return ""; } }; - -// WHILE -struct WhileNode : Node { - std::unique_ptr condition; - std::unique_ptr body; - WhileNode(std::unique_ptr c, std::unique_ptr b) - : condition(std::move(c)), body(std::move(b)) {} - - std::string eval(Context& ctx) override { - while (true) { - std::string res = condition->eval(ctx); - if (res != "1") break; // Если не 1, выходим - body->eval(ctx); - } - return ""; - } -}; - -// --- МАССИВЫ --- - -// array myArr 10; -struct ArrayDeclNode : Node { - std::string name; - std::unique_ptr sizeExpr; - ArrayDeclNode(std::string n, std::unique_ptr s) : name(n), sizeExpr(std::move(s)) {} - std::string eval(Context& ctx) override { - int size = std::stoi(sizeExpr->eval(ctx)); - ctx.arrays[name] = std::vector(size, "0"); - return ""; - } -}; - -// set(arr, index, value); -struct ArraySetNode : Node { - std::string name; - std::unique_ptr idx; - std::unique_ptr val; - ArraySetNode(std::string n, std::unique_ptr i, std::unique_ptr v) - : name(n), idx(std::move(i)), val(std::move(v)) {} - std::string eval(Context& ctx) override { - if (!ctx.arrays.count(name)) { std::cerr << "Array not found: " << name << std::endl; exit(1); } - int i = std::stoi(idx->eval(ctx)); - if (i < 0 || i >= ctx.arrays[name].size()) { std::cerr << "Index out of bounds" << std::endl; exit(1); } - ctx.arrays[name][i] = val->eval(ctx); - return ""; - } -}; - -// get(arr, index) -struct ArrayGetNode : Node { - std::string name; - std::unique_ptr idx; - ArrayGetNode(std::string n, std::unique_ptr i) : name(n), idx(std::move(i)) {} - std::string eval(Context& ctx) override { - if (!ctx.arrays.count(name)) { std::cerr << "Array not found: " << name << std::endl; exit(1); } - int i = std::stoi(idx->eval(ctx)); - if (i < 0 || i >= ctx.arrays[name].size()) { std::cerr << "Index out of bounds" << std::endl; exit(1); } - return ctx.arrays[name][i]; - } -}; - -struct ArraySizeNode : Node { - std::string name; - ArraySizeNode(std::string n) : name(n) {} - std::string eval(Context& ctx) override { - if (!ctx.arrays.count(name)) return "0"; - return std::to_string(ctx.arrays[name].size()); - } -}; - -// --- INCLUDE --- -// Чтобы не было круговых зависимостей, мы парсим файл прямо тут (костыль, но рабочий для .h файла) -// В реальном проекте парсер нужно передавать или делать Include отдельным механизмом -struct IncludeNode : Node { - std::string filename; - // Нам нужен указатель на функцию парсинга... но мы схитрим - // Мы просто прочитаем файл и добавим его как текст, но AST строится статически. - // Поэтому Include в интерпретаторах часто работает на этапе парсинга, а не выполнения. - // Но ты просил "библиотеки". Сделаем Runtime Include. - - // ВНИМАНИЕ: Для полноценного include здесь нужен доступ к Parser. - // Я оставлю заглушку, а реализацию сделаю в Parser.cpp через рекурсию. - // Это просто маркер. - std::string eval(Context& ctx) override { return ""; } -}; - - -// Остальные ноды (VarDecl, Assign, BinOp, Functions...) остаются такими же, -// скопируй их из предыдущего ответа, я добавлю только ИСПРАВЛЕННЫЙ FOX. - struct VarDeclNode : Node { std::string type, name; std::unique_ptr expr; VarDeclNode(std::string t, std::string n, std::unique_ptr e) : type(t), name(n), expr(std::move(e)) {} std::string eval(Context& ctx) override { - if(ctx.exists(name)) { std::cerr << "Redeclaration: " << name << std::endl; exit(1); } - ctx.variables[name] = expr->eval(ctx); - return ctx.variables[name]; + // Здесь expr->eval(ctx) может быть FuncCallNode, который вернет результат! + ctx.defineVar(name, expr->eval(ctx)); + return ""; } }; - struct AssignNode : Node { std::string name; std::unique_ptr expr; AssignNode(std::string n, std::unique_ptr e) : name(n), expr(std::move(e)) {} std::string eval(Context& ctx) override { - if(!ctx.exists(name)) { std::cerr << "Unknown var: " << name << std::endl; exit(1); } - ctx.variables[name] = expr->eval(ctx); - return ctx.variables[name]; + ctx.setVar(name, expr->eval(ctx)); + return ""; } }; - struct BinOpNode : Node { char op; std::unique_ptr left, right; BinOpNode(char o, std::unique_ptr l, std::unique_ptr r) : op(o), left(std::move(l)), right(std::move(r)) {} @@ -245,53 +217,69 @@ struct BinOpNode : Node { return "0"; } }; - +struct CompareNode : Node { + std::string op; std::unique_ptr left, right; + CompareNode(std::string o, std::unique_ptr l, std::unique_ptr r) : op(o), left(std::move(l)), right(std::move(r)) {} + std::string eval(Context& ctx) override { + double l = std::stod(left->eval(ctx)); double r = std::stod(right->eval(ctx)); + if (op == "==") return (std::abs(l - r) < 0.001) ? "1" : "0"; + if (op == "!=") return (std::abs(l - r) > 0.001) ? "1" : "0"; + if (op == "<") return (l < r) ? "1" : "0"; + if (op == ">") return (l > r) ? "1" : "0"; + return "0"; + } +}; +struct IfNode : Node { + std::unique_ptr cond, thenB, elseB; + IfNode(std::unique_ptr c, std::unique_ptr t, std::unique_ptr e) : cond(std::move(c)), thenB(std::move(t)), elseB(std::move(e)) {} + std::string eval(Context& ctx) override { + if (cond->eval(ctx) == "1") thenB->eval(ctx); + else if (elseB) elseB->eval(ctx); + return ""; + } +}; +struct WhileNode : Node { + std::unique_ptr cond, body; + WhileNode(std::unique_ptr c, std::unique_ptr b) : cond(std::move(c)), body(std::move(b)) {} + std::string eval(Context& ctx) override { + while (cond->eval(ctx) == "1") body->eval(ctx); + return ""; + } +}; struct BlockNode : Node { - std::vector> statements; + std::vector> stmts; std::string eval(Context& ctx) override { - std::string last = ""; - for(auto& s : statements) last = s->eval(ctx); - return last; + for(auto& s : stmts) s->eval(ctx); + return ""; } }; - -struct FuncDefNode : Node { - std::string name; std::shared_ptr body; - FuncDefNode(std::string n, std::shared_ptr b) : name(n), body(b) {} - std::string eval(Context& ctx) override { ctx.functions[name] = body; return ""; } -}; - -struct FuncCallNode : Node { - std::string name; - FuncCallNode(std::string n) : name(n) {} - std::string eval(Context& ctx) override { - if(!ctx.functions.count(name)) { std::cerr << "Unknown func: " << name << std::endl; exit(1); } - return ctx.functions[name]->eval(ctx); - } -}; - struct PrintNode : Node { std::unique_ptr expr; PrintNode(std::unique_ptr e) : expr(std::move(e)) {} std::string eval(Context& ctx) override { std::cout << expr->eval(ctx) << std::endl; return ""; } }; - struct InputNode : Node { std::string eval(Context& ctx) override { std::string b; std::getline(std::cin, b); return b; } }; -struct RoundNode : Node { - std::unique_ptr expr; - RoundNode(std::unique_ptr e) : expr(std::move(e)) {} - std::string eval(Context& ctx) override { return formatNumber(std::round(std::stod(expr->eval(ctx)))); } -}; -struct RandomNode : Node { - std::string eval(Context& ctx) override { return std::to_string(rand() % 100); } -}; - -// ИСПРАВЛЕННЫЙ FOX NODE: Теперь он выводит текст сам! -struct FoxNode : Node { +struct ArrayDeclNode : Node { + std::string name; std::unique_ptr size; + ArrayDeclNode(std::string n, std::unique_ptr s) : name(n), size(std::move(s)) {} std::string eval(Context& ctx) override { - std::cout << " (\\_/)\n (o.o) FoxLang v4.0\n (> <)" << std::endl; - return "fox"; + ctx.arrays[name] = std::vector(std::stoi(size->eval(ctx)), "0"); + return ""; } -}; \ No newline at end of file +}; +struct ArraySetNode : Node { + std::string name; std::unique_ptr idx, val; + ArraySetNode(std::string n, std::unique_ptr i, std::unique_ptr v) : name(n), idx(std::move(i)), val(std::move(v)) {} + std::string eval(Context& ctx) override { + auto& arr = ctx.getArray(name); arr[std::stoi(idx->eval(ctx))] = val->eval(ctx); return ""; + } +}; +struct ArrayGetNode : Node { + std::string name; std::unique_ptr idx; + ArrayGetNode(std::string n, std::unique_ptr i) : name(n), idx(std::move(i)) {} + std::string eval(Context& ctx) override { return ctx.getArray(name)[std::stoi(idx->eval(ctx))]; } +}; +struct IncludeNode : Node { std::string eval(Context& ctx) override { return ""; } }; +struct FoxNode : Node { std::string eval(Context& ctx) override { std::cout << "FoxLang" << std::endl; return ""; } }; \ No newline at end of file diff --git a/src/Lexer.cpp b/src/Lexer.cpp index 1881dcc..0abe40e 100644 --- a/src/Lexer.cpp +++ b/src/Lexer.cpp @@ -9,22 +9,17 @@ std::vector Lexer::tokenize() { while (pos < source.length()) { char current = source[pos]; - // 1. Пропуск пробелов if (isspace(current)) { if (current == '\n') line++; pos++; continue; } - // 2. ОБРАБОТКА КОММЕНТАРИЕВ if (current == '/' && pos + 1 < source.length() && source[pos + 1] == '/') { - while (pos < source.length() && source[pos] != '\n') { - pos++; - } + while (pos < source.length() && source[pos] != '\n') pos++; continue; } - // 3. Числа if (isdigit(current)) { std::string num; while (pos < source.length() && isdigit(source[pos])) num += source[pos++]; @@ -34,18 +29,14 @@ std::vector Lexer::tokenize() { } tokens.push_back({TokenType::NUMBER, num, line}); } - // 4. Строки else if (current == '"') { pos++; std::string str; while (pos < source.length() && source[pos] != '"') str += source[pos++]; pos++; tokens.push_back({TokenType::STRING_LITERAL, str, line}); } - // 5. Идентификаторы и Ключевые слова - // ИСПРАВЛЕНИЕ ТУТ: Добавлена проверка || current == '_' else if (isalpha(current) || current == '_') { std::string id; - // И ТУТ: Добавлена проверка || source[pos] == '_' while (pos < source.length() && (isalnum(source[pos]) || source[pos] == '_')) { id += source[pos++]; } @@ -58,7 +49,6 @@ std::vector Lexer::tokenize() { else if (id == "int") tokens.push_back({TokenType::INT_KW, id, line}); else if (id == "string") tokens.push_back({TokenType::STRING_KW, id, line}); else if (id == "void") tokens.push_back({TokenType::VOID_KW, id, line}); - // Ключевые слова v4.0 else if (id == "while") tokens.push_back({TokenType::WHILE, id, line}); else if (id == "if") tokens.push_back({TokenType::IF, id, line}); else if (id == "else") tokens.push_back({TokenType::ELSE, id, line}); @@ -67,9 +57,10 @@ std::vector Lexer::tokenize() { else if (id == "get") tokens.push_back({TokenType::GET, id, line}); else if (id == "size") tokens.push_back({TokenType::SIZE, id, line}); else if (id == "include") tokens.push_back({TokenType::INCLUDE, id, line}); + else if (id == "return") tokens.push_back({TokenType::RETURN, id, line}); + else if (id == "global") tokens.push_back({TokenType::GLOBAL, id, line}); else tokens.push_back({TokenType::IDENTIFIER, id, line}); } - // 6. Операторы else { if (current == '=' && pos+1 < source.length() && source[pos+1] == '=') { tokens.push_back({TokenType::EQ, "==", line}); pos+=2; continue; diff --git a/src/Parser.cpp b/src/Parser.cpp index a2622a6..cc4147c 100644 --- a/src/Parser.cpp +++ b/src/Parser.cpp @@ -3,11 +3,7 @@ #include #include #include -#include // Нужно для C++17, чтобы работать с путями красиво -// Хелпер для получения папки из пути к файлу -// Пример: "test/main.fox" -> "test/" -// Пример: "script.fox" -> "./" std::string getDirectory(const std::string& filepath) { size_t found = filepath.find_last_of("/\\"); if (found == std::string::npos) return "./"; @@ -18,42 +14,76 @@ Parser::Parser(std::vector t) : tokens(t) {} Token Parser::consume(TokenType type) { if (tokens[pos].type == type) return tokens[pos++]; - std::cerr << "Syntax Error: Expected token type " << (int)type - << " but found '" << tokens[pos].value - << "' on line " << tokens[pos].line << std::endl; + std::cerr << "Syntax Error: Expected token " << (int)type + << " got '" << tokens[pos].value << "' line " << tokens[pos].line << std::endl; exit(1); } -// --- ВЫРАЖЕНИЯ (Остаются без изменений) --- std::unique_ptr Parser::primary() { - if (tokens[pos].type == TokenType::NUMBER) return std::make_unique(consume(TokenType::NUMBER).value); - if (tokens[pos].type == TokenType::STRING_LITERAL) return std::make_unique(consume(TokenType::STRING_LITERAL).value); + // 1. УНАРНЫЙ МИНУС (Обработка отрицательных чисел: -5, -var) + if (tokens[pos].type == TokenType::MINUS) { + consume(TokenType::MINUS); + // Превращаем -5 в (0 - 5) + return std::make_unique('-', + std::make_unique("0"), + primary() // Рекурсивно вызываем primary, чтобы считать само число или скобку + ); + } + + // 2. Числа + if (tokens[pos].type == TokenType::NUMBER) { + return std::make_unique(consume(TokenType::NUMBER).value); + } + + // 3. Строки + if (tokens[pos].type == TokenType::STRING_LITERAL) { + return std::make_unique(consume(TokenType::STRING_LITERAL).value); + } + // 4. Переменные и Вызовы функций + if (tokens[pos].type == TokenType::IDENTIFIER) { + std::string name = consume(TokenType::IDENTIFIER).value; + + // Если дальше скобка '(', значит это ВЫЗОВ ФУНКЦИИ + if (tokens[pos].type == TokenType::LPAREN) { + consume(TokenType::LPAREN); + std::vector> args; + if (tokens[pos].type != TokenType::RPAREN) { + args.push_back(expression()); + while (tokens[pos].type == TokenType::COMMA) { + consume(TokenType::COMMA); + args.push_back(expression()); + } + } + consume(TokenType::RPAREN); + return std::make_unique(name, std::move(args)); + } + // Иначе это просто доступ к переменной + return std::make_unique(name); + } + + // Остальные проверки (массивы, input, скобки) if (tokens[pos].type == TokenType::GET) { consume(TokenType::GET); consume(TokenType::LPAREN); std::string name = consume(TokenType::IDENTIFIER).value; consume(TokenType::COMMA); auto idx = expression(); consume(TokenType::RPAREN); return std::make_unique(name, std::move(idx)); } - if (tokens[pos].type == TokenType::SIZE) { - consume(TokenType::SIZE); consume(TokenType::LPAREN); - std::string name = consume(TokenType::IDENTIFIER).value; - consume(TokenType::RPAREN); return std::make_unique(name); - } - if (tokens[pos].type == TokenType::IDENTIFIER) { - std::string name = consume(TokenType::IDENTIFIER).value; - if (tokens[pos].type == TokenType::LPAREN) { - consume(TokenType::LPAREN); consume(TokenType::RPAREN); - return std::make_unique(name); - } - return std::make_unique(name); - } - if (tokens[pos].type == TokenType::INPUT) { consume(TokenType::INPUT); consume(TokenType::LPAREN); consume(TokenType::RPAREN); return std::make_unique(); } - if (tokens[pos].type == TokenType::ROUND) { consume(TokenType::ROUND); consume(TokenType::LPAREN); auto n = expression(); consume(TokenType::RPAREN); return std::make_unique(std::move(n)); } - if (tokens[pos].type == TokenType::RANDOM) { consume(TokenType::RANDOM); consume(TokenType::LPAREN); consume(TokenType::RPAREN); return std::make_unique(); } - if (tokens[pos].type == TokenType::LPAREN) { consume(TokenType::LPAREN); auto n = expression(); consume(TokenType::RPAREN); return n; } - std::cerr << "Error: Unexpected token '" << tokens[pos].value << "' line " << tokens[pos].line << std::endl; + if (tokens[pos].type == TokenType::INPUT) { + consume(TokenType::INPUT); consume(TokenType::LPAREN); consume(TokenType::RPAREN); + return std::make_unique(); + } + + if (tokens[pos].type == TokenType::LPAREN) { + consume(TokenType::LPAREN); + auto n = expression(); + consume(TokenType::RPAREN); + return n; + } + + std::cerr << "Parser Error: Unexpected token '" << tokens[pos].value + << "' at line " << tokens[pos].line << std::endl; exit(1); } @@ -89,79 +119,119 @@ std::unique_ptr Parser::parseBlock() { consume(TokenType::LBRACE); auto block = std::make_unique(); while (tokens[pos].type != TokenType::RBRACE && tokens[pos].type != TokenType::END) { - block->statements.push_back(statement()); + block->stmts.push_back(statement()); } consume(TokenType::RBRACE); return block; } -// --- ЛОГИКА ИМПОРТА --- void processInclude(std::string filename, Context& ctx, std::string currentFile) { - // 1. Вычисляем путь: Папка текущего файла + Имя подключаемого std::string dir = getDirectory(currentFile); std::string fullPath = dir + filename; - - // Открываем файл std::ifstream file(fullPath); - if (!file.is_open()) { - // Если не нашли, пробуем искать просто по имени (в текущей рабочей папке) - file.open(filename); - if (!file.is_open()) { - std::cerr << "Include Error: File '" << fullPath << "' (or '" << filename << "') not found!" << std::endl; - exit(1); - } - fullPath = filename; // Если нашли локально, обновляем путь - } - + if (!file.is_open()) { file.open(filename); if(!file.is_open()) exit(1); } std::stringstream buffer; buffer << file.rdbuf(); Lexer lexer(buffer.str()); - auto tokens = lexer.tokenize(); - - Parser parser(tokens); - parser.globalContext = ctx; // Передаем память - parser.currentFile = fullPath; // Указываем новый файл как текущий - - // ВАЖНО: Включаем режим импорта! - // Это заставит парсер игнорировать вызовы функций в mainLogic - parser.importMode = true; - - parser.run(); - ctx = parser.globalContext; // Забираем обновленную память + Parser parser(lexer.tokenize()); + parser.globalContext = ctx; parser.currentFile = fullPath; parser.importMode = true; + parser.run(); ctx = parser.globalContext; } std::unique_ptr Parser::statement() { - // 1. INCLUDE if (tokens[pos].type == TokenType::INCLUDE) { consume(TokenType::INCLUDE); consume(TokenType::LPAREN); std::string file = consume(TokenType::STRING_LITERAL).value; consume(TokenType::RPAREN); consume(TokenType::SEMICOLON); - - // ВАЖНО: Передаем текущий файл, чтобы вычислить относительный путь processInclude(file, globalContext, currentFile); - return std::make_unique(); } - // 2. ОБЪЯВЛЕНИЕ ПЕРЕМЕННЫХ (Всегда выполняем, даже при импорте!) - if (tokens[pos].type == TokenType::INT_KW || tokens[pos].type == TokenType::STRING_KW) { + if (tokens[pos].type == TokenType::GLOBAL) { + consume(TokenType::GLOBAL); + std::string type; + if (tokens[pos].type == TokenType::INT_KW) type = "int"; + else if (tokens[pos].type == TokenType::STRING_KW) type = "string"; + pos++; + std::string name = consume(TokenType::IDENTIFIER).value; + consume(TokenType::ASSIGN); + auto expr = expression(); + consume(TokenType::SEMICOLON); + return std::make_unique(type, name, std::move(expr)); + } + + if (tokens[pos].type == TokenType::INT_KW || tokens[pos].type == TokenType::STRING_KW || tokens[pos].type == TokenType::VOID_KW) { std::string type = tokens[pos].value; pos++; std::string name = consume(TokenType::IDENTIFIER).value; + + // Определение функции + if (tokens[pos].type == TokenType::LPAREN) { + consume(TokenType::LPAREN); + std::vector params; + if (tokens[pos].type != TokenType::RPAREN) { + while(true) { + std::string pType = tokens[pos].value; pos++; + std::string pName = consume(TokenType::IDENTIFIER).value; + params.push_back({pType, pName}); + if (tokens[pos].type == TokenType::COMMA) consume(TokenType::COMMA); else break; + } + } + consume(TokenType::RPAREN); + auto body = parseBlock(); + globalContext.defineFunc(name, std::make_shared(type, name, params, std::move(body))); + return std::make_unique(); + } + + // Объявление переменной consume(TokenType::ASSIGN); auto expr = expression(); consume(TokenType::SEMICOLON); return std::make_unique(type, name, std::move(expr)); } - // 3. ФУНКЦИИ (Всегда выполняем, то есть запоминаем их) - if (tokens[pos].type == TokenType::VOID_KW) { - consume(TokenType::VOID_KW); - std::string name = consume(TokenType::IDENTIFIER).value; - consume(TokenType::LPAREN); consume(TokenType::RPAREN); - auto body = parseBlock(); - return std::make_unique(name, std::move(body)); + if (tokens[pos].type == TokenType::RETURN) { + consume(TokenType::RETURN); + std::unique_ptr expr = nullptr; + if (tokens[pos].type != TokenType::SEMICOLON) expr = expression(); + consume(TokenType::SEMICOLON); + if (importMode) return std::make_unique(); + return std::make_unique(std::move(expr)); + } + + if (tokens[pos].type == TokenType::WHILE) { + consume(TokenType::WHILE); consume(TokenType::LPAREN); + auto cond = comparison(); consume(TokenType::RPAREN); + auto body = parseBlock(); + if (importMode) return std::make_unique(); + return std::make_unique(std::move(cond), std::move(body)); + } + + if (tokens[pos].type == TokenType::IF) { + consume(TokenType::IF); consume(TokenType::LPAREN); + auto cond = comparison(); consume(TokenType::RPAREN); + auto thenB = parseBlock(); + std::unique_ptr elseB = nullptr; + if (tokens[pos].type == TokenType::ELSE) { + consume(TokenType::ELSE); + if (tokens[pos].type == TokenType::IF) elseB = statement(); else elseB = parseBlock(); + } + if (importMode) return std::make_unique(); + return std::make_unique(std::move(cond), std::move(thenB), std::move(elseB)); + } + + if (tokens[pos].type == TokenType::PRINT) { + consume(TokenType::PRINT); consume(TokenType::LPAREN); + auto expr = expression(); + consume(TokenType::RPAREN); consume(TokenType::SEMICOLON); + if (importMode) return std::make_unique(); + return std::make_unique(std::move(expr)); + } + + if (tokens[pos].type == TokenType::FOX) { + consume(TokenType::FOX); consume(TokenType::LPAREN); consume(TokenType::RPAREN); consume(TokenType::SEMICOLON); + if (importMode) return std::make_unique(); + return std::make_unique(); } - // 4. МАССИВЫ (Выполняем, глобальные массивы нужны) if (tokens[pos].type == TokenType::ARRAY) { consume(TokenType::ARRAY); std::string name = consume(TokenType::IDENTIFIER).value; @@ -169,98 +239,48 @@ std::unique_ptr Parser::statement() { consume(TokenType::SEMICOLON); return std::make_unique(name, std::move(size)); } - - // ========================================================= - // БЛОК ИГНОРИРОВАНИЯ (Код ниже НЕ выполняется при include) - // ========================================================= - - // 5. WHILE - if (tokens[pos].type == TokenType::WHILE) { - consume(TokenType::WHILE); consume(TokenType::LPAREN); - auto cond = comparison(); - consume(TokenType::RPAREN); - auto body = parseBlock(); - - if (importMode) return std::make_unique(); // <-- Игнор - return std::make_unique(std::move(cond), std::move(body)); - } - - // 6. IF - if (tokens[pos].type == TokenType::IF) { - consume(TokenType::IF); consume(TokenType::LPAREN); - auto cond = comparison(); - consume(TokenType::RPAREN); - auto thenB = parseBlock(); - std::unique_ptr elseB = nullptr; - if (tokens[pos].type == TokenType::ELSE) { - consume(TokenType::ELSE); - if (tokens[pos].type == TokenType::IF) elseB = statement(); - else elseB = parseBlock(); - } - - if (importMode) return std::make_unique(); // <-- Игнор - return std::make_unique(std::move(cond), std::move(thenB), std::move(elseB)); - } - - // 7. PRINT - if (tokens[pos].type == TokenType::PRINT) { - consume(TokenType::PRINT); consume(TokenType::LPAREN); - auto expr = expression(); - consume(TokenType::RPAREN); consume(TokenType::SEMICOLON); - - if (importMode) return std::make_unique(); // <-- Игнор - return std::make_unique(std::move(expr)); - } - - // 8. FOX - if (tokens[pos].type == TokenType::FOX) { - consume(TokenType::FOX); consume(TokenType::LPAREN); consume(TokenType::RPAREN); consume(TokenType::SEMICOLON); - if (importMode) return std::make_unique(); // <-- Игнор - return std::make_unique(); - } - - // 9. SET (Arrays) + if (tokens[pos].type == TokenType::SET) { consume(TokenType::SET); consume(TokenType::LPAREN); std::string name = consume(TokenType::IDENTIFIER).value; consume(TokenType::COMMA); auto idx = expression(); consume(TokenType::COMMA); auto val = expression(); consume(TokenType::RPAREN); consume(TokenType::SEMICOLON); - if (importMode) return std::make_unique(); // <-- Игнор + if (importMode) return std::make_unique(); return std::make_unique(name, std::move(idx), std::move(val)); } - // 10. IDENTIFIER (Присваивание или Вызов функции) if (tokens[pos].type == TokenType::IDENTIFIER) { if (tokens[pos+1].type == TokenType::ASSIGN) { std::string name = consume(TokenType::IDENTIFIER).value; consume(TokenType::ASSIGN); auto expr = expression(); consume(TokenType::SEMICOLON); - - if (importMode) return std::make_unique(); // <-- Игнор присваивания + if (importMode) return std::make_unique(); return std::make_unique(name, std::move(expr)); } if (tokens[pos+1].type == TokenType::LPAREN) { std::string name = consume(TokenType::IDENTIFIER).value; - consume(TokenType::LPAREN); consume(TokenType::RPAREN); consume(TokenType::SEMICOLON); - - if (importMode) return std::make_unique(); // <-- Игнор вызова (mainLogic не сработает) - return std::make_unique(name); + consume(TokenType::LPAREN); + std::vector> args; + if (tokens[pos].type != TokenType::RPAREN) { + args.push_back(expression()); + while (tokens[pos].type == TokenType::COMMA) { + consume(TokenType::COMMA); + args.push_back(expression()); + } + } + consume(TokenType::RPAREN); consume(TokenType::SEMICOLON); + if (importMode) return std::make_unique(); + return std::make_unique(name, std::move(args)); } } - if (tokens[pos].type == TokenType::LBRACE) return parseBlock(); - - std::cerr << "Syntax Error: Unknown statement '" << tokens[pos].value << "' at line " << tokens[pos].line << std::endl; - exit(1); + std::cerr << "Unknown statement " << tokens[pos].value << std::endl; exit(1); } void Parser::run() { while (tokens[pos].type != TokenType::END) { - auto stmt = statement(); - // stmt->eval вызывается, но если мы вернули BlockNode (пустышку) при импорте, - // то ничего не произойдет. - stmt->eval(globalContext); + statement()->eval(globalContext); } } \ No newline at end of file diff --git a/src/Token.h b/src/Token.h index 077d97f..d5d32bf 100644 --- a/src/Token.h +++ b/src/Token.h @@ -3,17 +3,20 @@ enum class TokenType { NUMBER, STRING_LITERAL, - PLUS, MINUS, STAR, SLASH, MOD, // Добавил MOD (%) - LPAREN, RPAREN, LBRACE, RBRACE, LBRACKET, RBRACKET, // [] + PLUS, MINUS, STAR, SLASH, MOD, + LPAREN, RPAREN, LBRACE, RBRACE, LBRACKET, RBRACKET, SEMICOLON, COMMA, ASSIGN, - EQ, NEQ, LT, GT, // ==, !=, <, > + EQ, NEQ, LT, GT, // Ключевые слова PRINT, INPUT, ROUND, RANDOM, FOX, - INT_KW, STRING_KW, VOID_KW, + INT_KW, STRING_KW, VOID_KW, // Типы данных WHILE, IF, ELSE, - ARRAY, SET, GET, SIZE, // Массивы - INCLUDE, // Библиотеки + ARRAY, SET, GET, SIZE, + INCLUDE, + + // НОВЫЕ: возврат и глобальные + RETURN, GLOBAL, IDENTIFIER, END, ERROR diff --git a/test/return.fox b/test/return.fox new file mode 100644 index 0000000..a3f204c --- /dev/null +++ b/test/return.fox @@ -0,0 +1,24 @@ +// Функция, которая проверяет число и возвращает код ошибки +int checkNumber(int n) { + if (n < 0) { + return 1; // Код ошибки 1: число отрицательное + } + if (n > 100) { + return 2; // Код ошибки 2: число слишком большое + } + return 0; // 0 - всё хорошо +} + +// Переменная для теста +int val = -5; + +// присваиваем результат функции в переменную! +int errorCode = checkNumber(val); + +// Проверяем, что записалось +if (errorCode == 0) { + print("Success!"); +} else { + print("Error happened. Code:"); + print(errorCode); // Выведет 1 +} \ No newline at end of file