44 lines
1.0 KiB
Plaintext
44 lines
1.0 KiB
Plaintext
loop xx = 1 to 10 -- xx is the control variable
|
|
...
|
|
loop yy = 1 to 10 -- yy is the control variable
|
|
...
|
|
if yy = 3 then leave xx -- xx loop terminated by leave
|
|
if yy = 4 then leave yy -- yy loop terminated by leave
|
|
...
|
|
end
|
|
...
|
|
end xx
|
|
|
|
loop label xlabel xx = 1 to 10 -- xx is still the control variable but LABEL takes precidence
|
|
...
|
|
loop yy = 1 to 10 -- yy is the control variable
|
|
...
|
|
if yy = 3 then leave xlabel -- xx loop terminated by leave
|
|
...
|
|
end yy
|
|
...
|
|
end xlabel
|
|
|
|
do label FINIS
|
|
say 'in do block'
|
|
if (1 == 1) then leave FINIS
|
|
say 'unreachable'
|
|
signal Exception("Will never happen")
|
|
catch ex = Exception
|
|
ex.printStackTrace()
|
|
finally
|
|
say 'out of do block'
|
|
end FINIS
|
|
|
|
loop vv over ['A', 'B']
|
|
select label selecting case vv
|
|
when 'A' then do; say 'A selected'; say '...'; end
|
|
when 'B' then do;
|
|
say 'B selected';
|
|
if (1 == 1) then leave selecting;
|
|
say '...';
|
|
end
|
|
otherwise do; say 'nl selection'; say '...'; end
|
|
end selecting
|
|
end vv
|