exit handler文

EXIT HANDLER
 例外処理区の実行を中止して例外状態にもどす。
 例外処理区にのみ書くことができる。

 exit handler文は CAUSE EXCEPTION EXTYPEと同じような働きをするが,EXIT HANDLERを実行すると例外を引き起こした元の文が例外の発生元になる。したがって,上位の例外処理区でretry文やcontinue文を実行するとき,違いが生じる。

例1 170行のcontinue文によって145行が実行される。

100 WHEN EXCEPTION IN
110    WHEN EXCEPTION IN
120       PRINT 1/0
125       PRINT "125"
130    USE
140       CAUSE EXCEPTION EXTYPE
145       PRINT "145"
150    END WHEN
160 USE 
170    CONTINUE
180 END WHEN
190 END


例2 170行のcontinue文によって125行が実行される。

100 WHEN EXCEPTION IN
110    WHEN EXCEPTION IN
120       PRINT 1/0
125       PRINT "125"
130    USE
140       EXIT HANDLER
145       PRINT "145"
150    END WHEN
160 USE 
170    CONTINUE
180 END WHEN
190 END