Skip to content

Commit 54b5098

Browse files
authored
Merge pull request #83 from dflook/unaryop
Fix UnaryOp parentheses
2 parents e968ef6 + c5772af commit 54b5098

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)