summaryrefslogtreecommitdiff
path: root/rebuilder.py
diff options
context:
space:
mode:
authorEmile Anclin <emile.anclin@logilab.fr>2010-01-21 14:10:22 +0100
committerEmile Anclin <emile.anclin@logilab.fr>2010-01-21 14:10:22 +0100
commitf19c445cf15e40d383ea7bff70b00242a4686691 (patch)
tree32be2f217fca8b560ac601fdc80e21c689503d82 /rebuilder.py
parentc95ac3d265283b30303f57ae6e651e7893dcd884 (diff)
downloadastroid-git-f19c445cf15e40d383ea7bff70b00242a4686691.tar.gz
factorize, fix some bugs
--HG-- branch : rebuild
Diffstat (limited to 'rebuilder.py')
-rw-r--r--rebuilder.py31
1 files changed, 16 insertions, 15 deletions
diff --git a/rebuilder.py b/rebuilder.py
index e630826c..49260b50 100644
--- a/rebuilder.py
+++ b/rebuilder.py
@@ -147,12 +147,23 @@ class RebuildVisitor(ASTVisitor):
"""python >= 2.4
visit a Decorator node -> check for classmethod and staticmethod
"""
+ return # TODO
for decorator_expr in node.nodes:
if isinstance(decorator_expr, nodes.Name) and \
decorator_expr.name in ('classmethod', 'staticmethod'):
node.parent.type = decorator_expr.name
return newnode
+ def visit_ellipsis(self, node):
+ """visit an Ellipsis node by returning a fresh instance of it"""
+ newnode = nodes.Ellipsis()
+ return newnode
+
+ def visit_emptynode(self, node):
+ """visit an EmptyNode node by returning a fresh instance of it"""
+ newnode = nodes.EmptyNode()
+ return newnode
+
def visit_from(self, node): # TODO XXX root !
"""visit an From node to become astng"""
# add names imported by the import to locals
@@ -188,21 +199,6 @@ class RebuildVisitor(ASTVisitor):
newnode.type = 'method'
frame.set_local(newnode.name, newnode)
- def visit_assattr(self, node): # TODO
- """visit an Getattr node to become astng"""
- assc, self.asscontext = self.asscontext, None
- newnode = self._visit_assattr(node)
- self.asscontext = assc
- self._delayed['assattr'].append(newnode)
- return newnode
-
- def visit_delattr(self, node): # TODO
- """visit an Getattr node to become astng"""
- assc, self.asscontext = self.asscontext, None
- newnode = self._visit_delattr(node)
- self.asscontext = assc
- return newnode
-
def visit_global(self, node):
"""visit an Global node to become astng"""
newnode = nodes.Global(node.names)
@@ -230,6 +226,11 @@ class RebuildVisitor(ASTVisitor):
return nodes.Const(CONST_NAME_TRANSFORMS[newnode.name])
return newnode
+ def visit_pass(self, node):
+ """visit a Pass node by returning a fresh instance of it"""
+ newnode = nodes.Pass()
+ return newnode
+
def visit_assname(self, node): # XXX parent
if self.asscontext is not None:
if self._global_names and node.name in self._global_names[-1]: