diff options
author | Jared Garst <jgarst@users.noreply.github.com> | 2016-10-24 09:18:01 -0700 |
---|---|---|
committer | Claudiu Popa <pcmanticore@gmail.com> | 2016-10-24 11:18:01 -0500 |
commit | 462af82a642c437fd113b3be487c28bb435f3ac8 (patch) | |
tree | 0a59a7ed23e59bed724309140b78209d3f50bb9d /astroid/rebuilder.py | |
parent | 9979615030d97cbe26bb64e005f7dd83012f013d (diff) | |
download | astroid-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.py | 12 |
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 |