A Turing programozási nyelv

Kivételkezelés

Kivételkezelés

A Turing nem tartalmaz kivételkezelést támogató eszközöket, azonban a Turing Plus pótolja ezt a hiányosságot. Minden alprogram elejére írhatunk kezelőt (handler) a kivételeknek. Formája: handler(kód) utasítások end handler. A kivételeket egész számokkal reprezentálja. Az exception lekezelése után a vezérlés az alprogram meghívása utáni pozícióra adódik át. Lehetőség van a kivételek explicit kiváltására is, a quit kulcsszó segítségével. Ennek háromféle alakja van, a kivétel terjedése szerint:


A quit utasítás első változata a normál kivétel jelöli a programban, ha nincs kezelő hozzá definiálva, akkor a rendszer a annak a sornak a számát írja ki, ahol a quit utasítás található. A második változatott (quit <) akkor használjuk, ha a hívó okozta a hibát, mint például ha a meghívott alprogram egy pozitív számot vár paraméterül, de a hívó programrész negatív számot adott át. Ebben az esetben, ha nincs explicit kivételkezelő, akkor a rendszer a hívó programrész sorának számát írja ki. Az utolsó (quit >) kivételt kiváltó utasítást akkor kell alkalmazni, ha a kivételt egy előző kivétel váltotta ki. Így tudjuk a kivételeket "továbbpasszolni".