rlox/interpreter/tests/lox/logical_operator/or.lox

19 lines
521 B
Lox
Raw Normal View History

2024-09-01 19:15:55 +02:00
// 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