Update doc and readme
This commit is contained in:
+4
-5
@@ -141,27 +141,26 @@ print(get(chest, 0)); // Выведет 55
|
||||
|
||||
## 7. Модули и Импорт
|
||||
|
||||
FoxLang v4.0 поддерживает умный импорт.
|
||||
FoxLang v4.0 поддерживает импорт внешних модулей.
|
||||
Используйте `include("путь/к/файлу.fox");`.
|
||||
|
||||
**Особенности:**
|
||||
|
||||
* Поддерживаются **относительные пути** (например, `../lib/utils.fox`).
|
||||
* **Режим Импорта:** При подключении файла интерпретатор выполняет **только** объявления переменных и функций. Команды вызова функций или `print` внутри подключаемого файла **игнорируются**. Это позволяет безопасно подключать библиотеки, содержащие тестовый код.
|
||||
* **Важная информация:** При подключении внешних модулей в связи с оссобенностями c++, если в скрипте есть вызов функции в корне скрипта то она тоже будет выполнена при импорте. Это может привести к неожиданным результатам и ошибкам.
|
||||
|
||||
**Пример:**
|
||||
`lib.fox`:
|
||||
|
||||
```cpp
|
||||
void hello() { print("Hi!"); }
|
||||
hello(); // ЭТО НЕ ВЫПОЛНИТСЯ ПРИ ИМПОРТЕ
|
||||
hello(); // Это выполнтся при импорте
|
||||
```
|
||||
|
||||
`main.fox`:
|
||||
|
||||
```cpp
|
||||
include("lib.fox");
|
||||
hello(); // А вот теперь мы вызываем функцию сами
|
||||
hello(); // Мы так же можем вызывать функции из модулей.
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
  
|
||||
|
||||
**FoxLang** — это интерпретируемый язык программирования общего назначения, разработанный с нуля на C++.
|
||||
Он сочетает строгий синтаксис (в стиле C++/Java) с динамической гибкостью скриптовых языков. Проект демонстрирует реализацию собственного лексера, рекурсивного парсера, AST-дерева и модульной архитектуры.
|
||||
Он сочетает строгий синтаксис (в стиле C++) с динамической гибкостью скриптовых языков. Проект демонстрирует реализацию собственного лексера, рекурсивного парсера, AST-дерева и модульной архитектуры.
|
||||
|
||||
## ✨ Ключевые возможности
|
||||
|
||||
@@ -47,7 +47,7 @@ fox();
|
||||
## 💻 Пример кода
|
||||
|
||||
```cpp
|
||||
// Подключаем библиотеку (код внутри не выполняется, только функции запоминаются)
|
||||
// Подключаем библиотеку
|
||||
include("math_lib.fox");
|
||||
|
||||
int x = 10;
|
||||
@@ -72,5 +72,5 @@ print("Array elem: " + get(nums, 0));
|
||||
|
||||
---
|
||||
|
||||
**Author:** [SkrinVex]
|
||||
**Author:** [SkrinVex](https://skrinvex.su)
|
||||
**License:** MIT
|
||||
@@ -141,27 +141,26 @@ print(get(chest, 0)); // Выведет 55
|
||||
|
||||
## 7. Модули и Импорт
|
||||
|
||||
FoxLang v4.0 поддерживает умный импорт.
|
||||
FoxLang v4.0 поддерживает импорт внешних модулей.
|
||||
Используйте `include("путь/к/файлу.fox");`.
|
||||
|
||||
**Особенности:**
|
||||
|
||||
* Поддерживаются **относительные пути** (например, `../lib/utils.fox`).
|
||||
* **Режим Импорта:** При подключении файла интерпретатор выполняет **только** объявления переменных и функций. Команды вызова функций или `print` внутри подключаемого файла **игнорируются**. Это позволяет безопасно подключать библиотеки, содержащие тестовый код.
|
||||
* **Важная информация:** При подключении внешних модулей в связи с оссобенностями c++, если в скрипте есть вызов функции в корне скрипта то она тоже будет выполнена при импорте. Это может привести к неожиданным результатам и ошибкам.
|
||||
|
||||
**Пример:**
|
||||
`lib.fox`:
|
||||
|
||||
```cpp
|
||||
void hello() { print("Hi!"); }
|
||||
hello(); // ЭТО НЕ ВЫПОЛНИТСЯ ПРИ ИМПОРТЕ
|
||||
hello(); // Это выполнтся при импорте
|
||||
```
|
||||
|
||||
`main.fox`:
|
||||
|
||||
```cpp
|
||||
include("lib.fox");
|
||||
hello(); // А вот теперь мы вызываем функцию сами
|
||||
hello(); // Мы так же можем вызывать функции из модулей.
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user