(x: Expression)
| 102 | // the cheap `unknowns`/operator gates) so it runs only on fold candidates. |
| 103 | |
| 104 | // If purely numeric (no unknowns), evaluate the whole expression. |
| 105 | if ( |
| 106 | expr.unknowns.length === 0 && |
| 107 | BASIC_ARITHMETIC.includes(expr.operator) && |
| 108 | !hasAssignedVariable(expr) |