Błędy składniowe

Z powodu bardzo prostej składni jest bardzo mało typów błędów składniowych. Nawet instrukcje warunkowe i pętle są tworzone jako wywołania metod, więc błędy składniowe mogą wystąpić jedynie, gdy tokeny nie są ułożone w odpowiedni sposób.

Jak wykryć błędy składniowe?

W Plezuro nie ma fatalnych błędów. Każdy błąd to wyjątek. Kiedy skrypt zawierający błąd składniowy jest importowany, wyjątek powinien zostać wyrzucony. Kompilator powinien stworzyć plik wynikowy (lub funkcję w pliku wynikowym, gdzie wszystkie skrypty są łączone razem), który wyrzuci wyjątek.

Pełna lista błędów składniowych

Nazwa

Wystąpienie

Przykłady

BracketStackException

nawias nie jest domknięty,

zamknięcie nieodpowiedniego typu nawiasu,

nadmierne domknięcie nawiasu

(2 + 3

(3 + 1 + [)]

4 + 5)

NonExistentTokenException

token nieistniejącego typu

$αβγ = 21
OperatorAfterBracketCloseException

po zamknięciu nawiasu coś innego niż operator lub następne domknięcie nawiasu

$x=[2] “oo”
OperatorAfterBracketOpenException

nieodpowiedni operator po otwarciu nawiasu lub początku skryptu

* 43
OperatorAfterOperatorException

operator po operatorze (chociaż są wyjątki od tego)

2 + * 5
OperatorBeforeBracketCloseException

operator przed domknięciem nawiasu

(2 + 3 -)
ValueAfterValueException

stały token po innym stałym tokenie

3 + *