A Harbour programozási nyelv

Kivételkezelés

BEGIN SEQUENCE struktúra

BEGIN SEQUENCE … [BREAK] [Break([Exp])] RECOVER [USING Var] … END[SEQUENCE]

BEGIN SEQUENCE … [BREAK] [Break()] END[SEQUENCE]

A BEGIN SEQUENCE struktúra lehetővé teszi bármely szekvencia kezelhető abortálását – akár egymásbaágyazott függvények és eljárások esetén is. Ez azt jelenti, hogy a meghívott függvény vagy eljárás ellátható BREAK utasítással vagy Break() kifejezéssel. Ez kikényszeríti az egymásbaágyazás szétbontását visszafelé egészen az első BEGIN SEQUENCE struktúráig. A BREAK utasítás átadhat akármilyen típusú kifejezést, amelyet elfogad egy, a további helyreállítást engedélyező RECOVER utasítás. Az Error objektum támogatja a canDefault, canRetry és canSubstitute tulajdonságokat, melyek lehetővé teszik a hibakezelőnek az előkészületeket. Ezt követően a hibakezelő megpróbálhatja a műveletet újra végrehajtani, esetleg visszatérhet egy értékkel, hogy helyettesítse a hibát okozó kifejezést.