Sweet.js - скобки в теле макроса
Я хочу использовать скобки в теле макроса для группировки выражений. Например:
macro m {
rule { ($x, $y) } => {
$x >>> ($y * 5)
}
}
Sweet.js удаляет все скобки:
m(6, 7) => 6 >>> 7 * 5
Я ожидаю следующего выхода:
m(6, 7) => 6 >>> (7 * 5)
Как я могу избежать скобок внутри тела макроса?
1 ответ
Решение
Sweet.js (технически escodegen, который sweet.js использует для codegen) удаляет только лишние скобки (то есть правила приоритета означают, что 6 >>> 7 * 5 === 6 >>> (7 * 5)
таким образом, парены не нужны), поэтому вам не нужно ничего делать, чтобы избежать паренов в макросах.