feat: add unary operators and variable assignment with precedence handling
Implement unary negation for numbers and logical not for booleans, introduce PREC_ASSIGNMENT and PREC_UNARY precedence levels, refactor parse functions to accept allowAssignment parameter, add assignment tests for global/local/chained/error cases, and update if-syntax to support statement branches and assignment in conditions.
This commit is contained in:
@@ -23,6 +23,9 @@ io.write(false == 2 <= 1) // expect: true
|
||||
// >= has higher precedence than ==.
|
||||
io.write(false == 1 >= 2) // expect: true
|
||||
|
||||
// Unary - has lower precedence than ..
|
||||
io.write(-"abc".count) // expect: -3
|
||||
|
||||
// TODO(bob): %, associativity.
|
||||
|
||||
// Using () for grouping.
|
||||
|
||||
Reference in New Issue
Block a user