lua:exeptions
Toto je starší verze dokumentu!
Doporučený postup zpracování vyjímek
Sekce do … end omezí obor platnosti lokalni proměnné finally*. Jinak platí az do konce bloku. Odsazením se zvýrazní odkud-kam je chráněný blok.
local File = io.open(FileName, "r") do local function finally_Close() File:close() end ... end finally_Close() error("Pri neomezeni pomoci do...end se ted znovu zavola finally_Close()!")
Požadujeme-li ignorování vyjímky vrátíme z funkce true. Finally* funkce dostává jako parametr chybovou zpravu.
local function finally_except(msg) print(msg) return true end
Doporučení: Není-li možno ve funkci úspěšně dále pokračovat přerušte ji pomocí error("Zpráva"). Bude přerušena i volající funkce atd… až do místa odchycení vyjímky. Typicky zpráva uživateli.
lua/exeptions.1218024304.txt.gz · Poslední úprava: 2008/08/06 12:05 autor: Petr Kristan