Sfairadora

  • Referenční příručka

Příkaz try

try blok1
try blok1 else blok2
Vyhodnotí blok1 a pokud jeho výsledkem není chyba (typ Error), vrátí jej jako výsledek celého příkazu try. Pokud je výsledkem bloku1 chyba, v případě bez větve else vrátí iniciální hodnotu typu, který by vrátil blok1, kdyby neskončil chybou, verze s větví else vyhodnotí blok2 a výsledkem je potom výsledek bloku2. Ve větvi else je vždy definován zvláštní symbol last_error, jehož hodnotou je chyba, která nastala v bloku1. Tuto hodnotu lze buď analyzovat a podle ní provést opravu chyby, nebo jí lze zapouzdřit do nadřazené chyby a tu pak vrátit jako výsledek operátoru try.
Výrazy blok1 a blok2 jsou blokem v tom smyslu, že v nich definované proměnné mají lokální platnost.
Pro podrobnosti viz kapitolu o zpracování chyb.