mirror of
https://github.com/MorizzG/MLox.git
synced 2025-12-06 04:22:41 +00:00
19 lines
521 B
Lox
19 lines
521 B
Lox
|
|
// Note: These tests implicitly depend on ints being truthy.
|
||
|
|
|
||
|
|
// Return the first true argument.
|
||
|
|
print 1 or true; // expect: 1
|
||
|
|
print false or 1; // expect: 1
|
||
|
|
print false or false or true; // expect: true
|
||
|
|
|
||
|
|
// Return the last argument if all are false.
|
||
|
|
print false or false; // expect: false
|
||
|
|
print false or false or false; // expect: false
|
||
|
|
|
||
|
|
// Short-circuit at the first true argument.
|
||
|
|
var a = "before";
|
||
|
|
var b = "before";
|
||
|
|
(a = false) or
|
||
|
|
(b = true) or
|
||
|
|
(a = "bad");
|
||
|
|
print a; // expect: false
|
||
|
|
print b; // expect: true
|