Minilisp.pm/t/block.t

43 lines
1.1 KiB
Perl
Raw Normal View History

2021-04-07 23:17:08 +02:00
(expect "block - return last value"
(equal 'top (block nil 'top)))
(expect "block - return"
(equal 'ok
(block nil
'test1
(return 'ok)
'fail)))
(expect "block - return-from"
(equal 'ok
(block banana
'a
'b
(return-from banana 'ok)
'c
'd)))
(expect "block - return-from inner block"
(equal 'ok
(block outer
'a
'b
(block inner
'c
(return-from inner 'fail)
'd)
'e
'ok)))
(expect "block - return-from outer block"
(equal 'ok
(block outer
'a
'b
(block inner
'c
(return-from outer 'ok)
'd)
'e
'fail)))