summaryrefslogtreecommitdiff
path: root/astroid/rebuilder.py
diff options
context:
space:
mode:
authorJared Garst <jgarst@users.noreply.github.com>2016-10-24 09:18:01 -0700
committerClaudiu Popa <pcmanticore@gmail.com>2016-10-24 11:18:01 -0500
commit462af82a642c437fd113b3be487c28bb435f3ac8 (patch)
tree0a59a7ed23e59bed724309140b78209d3f50bb9d /astroid/rebuilder.py
parent9979615030d97cbe26bb64e005f7dd83012f013d (diff)
downloadastroid-git-462af82a642c437fd113b3be487c28bb435f3ac8.tar.gz
add format string support (#365)
Format strings require support for two new nodes, FormattedValue, respectively JoinedStr.
Diffstat (limited to 'astroid/rebuilder.py')
-rw-r--r--astroid/rebuilder.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/astroid/rebuilder.py b/astroid/rebuilder.py
index d80033fe..91774cfd 100644
--- a/astroid/rebuilder.py
+++ b/astroid/rebuilder.py
@@ -869,6 +869,18 @@ class TreeRebuilder3(TreeRebuilder):
def visit_asyncwith(self, node, parent):
return self._visit_with(nodes.AsyncWith, node, parent)
+ def visit_joinedstr(self, node, parent):
+ newnode = nodes.JoinedStr(node.lineno, node.col_offset, parent)
+ newnode.postinit([self.visit(child, newnode)
+ for child in node.values])
+ return newnode
+
+ def visit_formattedvalue(self, node, parent):
+ newnode = nodes.FormattedValue(node.lineno, node.col_offset, parent)
+ newnode.postinit(self.visit(node.value, newnode),
+ node.conversion,
+ _visit_or_none(node, 'format_spec', self, newnode))
+ return newnode
if sys.version_info >= (3, 0):
TreeRebuilder = TreeRebuilder3