doc: add operators and types_system docs
This commit is contained in:
@@ -1,2 +1,40 @@
|
||||
# Операторы
|
||||
|
||||
FZLang поддерживает арифметические, логические и унарные операции.
|
||||
Во время работы бинарные операции достают со стека два значения, и обратно кладут результат на стек.
|
||||
Унарные операции достают одно значение со стека, а затем кладут результат обратно на стек.
|
||||
|
||||
## Арифметические операции
|
||||
|
||||
| Операция | Допустимые типы | Описание |
|
||||
| -------- | --------------- | -------- |
|
||||
| `N + N` | *все числовые* | Сложение двух операндов |
|
||||
| `N - N` | *все числовые* | Вычитание правого операнда из левого |
|
||||
| `N * N` | *все числовые* | Переменожение двух операндов |
|
||||
| `N / N` | *все числовые* | Деление левого операнда на правый |
|
||||
| `N % N` | *все числовые* | Получение остатка от деления левого операнда на правый |
|
||||
| `N ^ N` | *все числовые* | Возведение левого операнда в степень правого |
|
||||
| `-N` | *все числовые* | Инверсия операнда |
|
||||
|
||||
## Операции сравнения
|
||||
|
||||
| Операция | Допустимые типы | Описание |
|
||||
| -------- | --------------- | -------- |
|
||||
| `N == N` | *все числовые*, булевы, объекты, строки | Сравнить равенство операндов |
|
||||
| `N != N` | *все числовые*, булевы, объекты, строки | Сравнить неравенство операндов |
|
||||
| `N > N` | *все числовые* | Проверить, что левый операнд больше правого |
|
||||
| `N >= N` | *все числовые* | Проверить, что левый операнд больше или равен правому |
|
||||
| `N < N` | *все числовые* | Проверить, что левый операнд меньше правого |
|
||||
| `N <= N` | *все числовые* | Проверить, что левый операнд меньше или равен правому |
|
||||
| `!N` | булевы | Инвертировать операнд |
|
||||
|
||||
> Важно:
|
||||
> В случае сравнения объектов (`==`, `!=`), сравниваются адреса, а не значения!
|
||||
|
||||
## Логические операции
|
||||
|
||||
| Операция | Допустимые типы | Описание |
|
||||
| -------- | --------------- | -------- |
|
||||
| `N && N` | булевы | Логическое **И** двух операндов |
|
||||
| `N || N` | булевы | Логическое **ИЛИ** двух операндов |
|
||||
|
||||
|
||||
Reference in New Issue
Block a user