Пример #1
0
 def visit_module(self, node, modname):
     """visit a Module node by returning a fresh instance of it"""
     newnode = new.Module(modname, None)
     _lineno_parent(node, newnode, parent=None)
     _init_set_doc(node, newnode)
     newnode.body = [self.visit(child, newnode) for child in node.body]
     newnode.set_line_info(newnode.last_child())
     return newnode
Пример #2
0
 def visit_module(self, node, modname, package):
     """visit a Module node by returning a fresh instance of it"""
     newnode = new.Module(modname, node.doc)
     newnode.package = package
     self._set_infos(node, newnode, None)
     self._remove_nodes = [] # list of ';' Discard nodes to be removed
     newnode.body = [self.visit(child, newnode) for child in node.node.nodes]
     for discard, d_parent in self._remove_nodes:
         d_parent.child_sequence(discard).remove(discard)
     return newnode
Пример #3
0
 def test_relative_to_absolute_name(self):
     # package
     mod = nodes.Module('very.multi.package', 'doc')
     mod.package = True
     modname = mod.relative_to_absolute_name('utils', 1)
     self.assertEqual(modname, 'very.multi.package.utils')
     modname = mod.relative_to_absolute_name('utils', 2)
     self.assertEqual(modname, 'very.multi.utils')
     modname = mod.relative_to_absolute_name('utils', 0)
     self.assertEqual(modname, 'very.multi.package.utils')
     modname = mod.relative_to_absolute_name('', 1)
     self.assertEqual(modname, 'very.multi.package')
     # non package
     mod = nodes.Module('very.multi.module', 'doc')
     mod.package = False
     modname = mod.relative_to_absolute_name('utils', 0)
     self.assertEqual(modname, 'very.multi.utils')
     modname = mod.relative_to_absolute_name('utils', 1)
     self.assertEqual(modname, 'very.multi.utils')
     modname = mod.relative_to_absolute_name('utils', 2)
     self.assertEqual(modname, 'very.utils')
     modname = mod.relative_to_absolute_name('', 1)
     self.assertEqual(modname, 'very.multi')
Пример #4
0
def build_module(name, doc=None):
    """create and initialize a astng Module node"""
    node = nodes.Module(name, doc, pure_python=False)
    node.package = False
    node.parent = None
    return node