Files
Patryk Gensch df6cf2f3d3
Some checks failed
docs / deploy (push) Has been cancelled
docs / build (push) Has been cancelled
Added part of docs
2026-05-19 20:51:59 +02:00

3.0 KiB

CONDITION

Obiekt opisujący warunek porównania dwóch operandów. Konfigurowany trzema polami w skrypcie i wywoływany metodą CHECK lub jedną z metod sterujących przepływem (BREAK, ONE_BREAK).

Pola

OPERAND1

STRING OPERAND1

Lewy operand porównania. Pole zawiera tekstowy zapis operandu, który zostanie zinterpretowany przy każdej ewaluacji warunku. Dopuszczalne formy:

  • literał tekstowy w cudzysłowach ("..." lub '...'),
  • literał logiczny (TRUE, FALSE),
  • literał liczbowy (5, -3.14),
  • nazwa zmiennej (zostanie pobrana jej wartość; jeżeli zmienna jest typu EXPRESSION, CONDITION lub COMPLEXCONDITION, zostanie ewaluowana),
  • wyrażenie skryptowe — fragment kodu rozpoczynający się od [, * lub zawierający operatory ^ albo |.

OPERAND2

STRING OPERAND2

Prawy operand porównania. Reguły interpretacji są identyczne jak dla OPERAND1.

OPERATOR

STRING OPERATOR

Operator porównania. Domyślnie EQUAL. Dopuszczalne wartości:

Wartość Znaczenie
EQUAL równa się
NOTEQUAL różne niż
LESS mniejsze niż
GREATER większe niż
LESSEQUAL mniejsze lub równe
GREATEREQUAL większe lub równe

Metody

BREAK

void BREAK([BOOL emitSignals])

Ewaluuje warunek. Jeżeli wynik jest TRUE, przerywa całe bieżące drzewo wywołań (efekt analogiczny do @BREAK). Jeżeli wynik jest FALSE, metoda nie ma efektu.

Parametry

  • emitSignals — (opcjonalnie) jeżeli TRUE, dodatkowo emitowany jest sygnał ONRUNTIMESUCCESS lub ONRUNTIMEFAILED w zależności od wyniku. Domyślnie FALSE.

Przykłady

COND1^BREAK(TRUE);
CONDKONTROLA^BREAK(TRUE);

CHECK

BOOL CHECK([BOOL emitSignals])

Ewaluuje warunek i zwraca wynik porównania.

Parametry

  • emitSignals — (opcjonalnie) jeżeli TRUE, dodatkowo emitowany jest sygnał ONRUNTIMESUCCESS lub ONRUNTIMEFAILED w zależności od wyniku. Domyślnie FALSE.

Zwraca: BOOL — wynik porównania.

Przykłady

CONPR1^CHECK(TRUE);
CONPR2^CHECK(TRUE);

ONE_BREAK

void ONE_BREAK([BOOL emitSignals])

Ewaluuje warunek. Jeżeli wynik jest TRUE, przerywa wyłącznie bieżącą procedurę (efekt analogiczny do @ONEBREAK). Jeżeli wynik jest FALSE, metoda nie ma efektu.

Parametry

  • emitSignals — (opcjonalnie) jak w BREAK.

Przykłady

COND1^ONE_BREAK(TRUE);
CONDREMOVEMENUITEM^ONE_BREAK(TRUE);

Sygnały

ONRUNTIMESUCCESS

Wywoływany, gdy ewaluacja warunku zwróciła TRUE i emitSignals było ustawione na TRUE.

ONRUNTIMEFAILED

Wywoływany, gdy ewaluacja warunku zwróciła FALSE i emitSignals było ustawione na TRUE.