mirror of
https://github.com/wren-lang/wren.git
synced 2026-01-11 22:28:45 +01:00
Allow statement bodies for flow control.
This means this works now: if (foo) return bar
This commit is contained in:
@ -2,10 +2,7 @@ var i = 0
|
||||
while (true) {
|
||||
i = i + 1
|
||||
IO.write(i)
|
||||
if (i > 2) {
|
||||
// TODO: Should not require block for break.
|
||||
break
|
||||
}
|
||||
if (i > 2) break
|
||||
IO.write(i)
|
||||
}
|
||||
// expect: 1
|
||||
|
||||
@ -1,18 +1,12 @@
|
||||
var i = 0
|
||||
while (true) {
|
||||
IO.write("outer " + i.toString)
|
||||
if (i > 1) {
|
||||
// TODO: Should not require block for break.
|
||||
break
|
||||
}
|
||||
if (i > 1) break
|
||||
|
||||
var j = 0
|
||||
while (true) {
|
||||
IO.write("inner " + j.toString)
|
||||
if (j > 1) {
|
||||
// TODO: Should not require block for break.
|
||||
break
|
||||
}
|
||||
if (j > 1) break
|
||||
|
||||
j = j + 1
|
||||
}
|
||||
|
||||
3
test/return/after_else.wren
Normal file
3
test/return/after_else.wren
Normal file
@ -0,0 +1,3 @@
|
||||
IO.write(fn {
|
||||
if (false) "no" else return "ok"
|
||||
}.call) // expect: ok
|
||||
3
test/return/after_if.wren
Normal file
3
test/return/after_if.wren
Normal file
@ -0,0 +1,3 @@
|
||||
IO.write(fn {
|
||||
if (true) return "ok"
|
||||
}.call) // expect: ok
|
||||
3
test/return/after_while.wren
Normal file
3
test/return/after_while.wren
Normal file
@ -0,0 +1,3 @@
|
||||
IO.write(fn {
|
||||
while (true) return "ok"
|
||||
}.call) // expect: ok
|
||||
1
test/return/in_function.wren
Normal file
1
test/return/in_function.wren
Normal file
@ -0,0 +1 @@
|
||||
var a = "ok"; IO.write(a) // expect: ok
|
||||
8
test/return/in_method.wren
Normal file
8
test/return/in_method.wren
Normal file
@ -0,0 +1,8 @@
|
||||
class Foo {
|
||||
method {
|
||||
return "ok"
|
||||
IO.write("bad")
|
||||
}
|
||||
}
|
||||
|
||||
IO.write((new Foo).method) // expect: ok
|
||||
Reference in New Issue
Block a user