Skip to content

Commit c5772af

Browse files
committed
Fix UnaryOp parentheses
1 parent e968ef6 commit c5772af

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

src/python_minifier/expression_printer.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,17 @@ def visit_UnaryOp(self, node):
218218
self.printer.delimiter(')')
219219
return
220220

221-
self._rhs(node.operand, node)
221+
right_precedence = self.precedence(node.operand)
222+
op_precedence = self.precedence(node)
223+
224+
if right_precedence != 0 and (
225+
(op_precedence > right_precedence)
226+
):
227+
self.printer.delimiter('(')
228+
self._expression(node.operand)
229+
self.printer.delimiter(')')
230+
else:
231+
self._expression(node.operand)
222232

223233
def visit_UAdd(self, node):
224234
self.printer.operator('+')

0 commit comments

Comments
 (0)