summaryrefslogtreecommitdiffstats
path: root/Tools/parser/unparse.py
diff options
context:
space:
mode:
authorYury Selivanov <yury@magic.io>2016-09-09 03:50:03 (GMT)
committerYury Selivanov <yury@magic.io>2016-09-09 03:50:03 (GMT)
commitf8cb8a16a344ab208fd46876c4b63604987347b8 (patch)
treec44caa48291401d1e1e388004d2762513ac88c93 /Tools/parser/unparse.py
parent09ad17810c38d1aaae02de69084dd2a8ad9f5cdb (diff)
downloadcpython-f8cb8a16a344ab208fd46876c4b63604987347b8.zip
cpython-f8cb8a16a344ab208fd46876c4b63604987347b8.tar.gz
cpython-f8cb8a16a344ab208fd46876c4b63604987347b8.tar.bz2
Issue #27985: Implement PEP 526 -- Syntax for Variable Annotations.
Patch by Ivan Levkivskyi.
Diffstat (limited to 'Tools/parser/unparse.py')
-rw-r--r--Tools/parser/unparse.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/Tools/parser/unparse.py b/Tools/parser/unparse.py
index 7203057..6c296bd 100644
--- a/Tools/parser/unparse.py
+++ b/Tools/parser/unparse.py
@@ -104,6 +104,19 @@ class Unparser:
self.write(" "+self.binop[t.op.__class__.__name__]+"= ")
self.dispatch(t.value)
+ def _AnnAssign(self, t):
+ self.fill()
+ if not t.simple and isinstance(t.target, ast.Name):
+ self.write('(')
+ self.dispatch(t.target)
+ if not t.simple and isinstance(t.target, ast.Name):
+ self.write(')')
+ self.write(": ")
+ self.dispatch(t.annotation)
+ if t.value:
+ self.write(" = ")
+ self.dispatch(t.value)
+
def _Return(self, t):
self.fill("return")
if t.value: