mirror of
https://github.com/python/cpython.git
synced 2025-10-09 08:31:26 +00:00
bpo-44081: improve ast.unparse() for lambdas with no parameters (GH-26000)
This commit is contained in:
parent
4aa63d65a9
commit
e4e931a67e
3 changed files with 21 additions and 5 deletions
13
Lib/ast.py
13
Lib/ast.py
|
@ -716,9 +716,9 @@ class _Unparser(NodeVisitor):
|
|||
self.maybe_newline()
|
||||
self.write(" " * self._indent + text)
|
||||
|
||||
def write(self, text):
|
||||
"""Append a piece of text"""
|
||||
self._source.append(text)
|
||||
def write(self, *text):
|
||||
"""Add new source parts"""
|
||||
self._source.extend(text)
|
||||
|
||||
@contextmanager
|
||||
def buffered(self, buffer = None):
|
||||
|
@ -1566,8 +1566,11 @@ class _Unparser(NodeVisitor):
|
|||
|
||||
def visit_Lambda(self, node):
|
||||
with self.require_parens(_Precedence.TEST, node):
|
||||
self.write("lambda ")
|
||||
self.traverse(node.args)
|
||||
self.write("lambda")
|
||||
with self.buffered() as buffer:
|
||||
self.traverse(node.args)
|
||||
if buffer:
|
||||
self.write(" ", *buffer)
|
||||
self.write(": ")
|
||||
self.set_precedence(_Precedence.TEST, node.body)
|
||||
self.traverse(node.body)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue