12345678910111213 |
- from astroid.nodes.scoped_nodes import Module
- def register_module_extender(manager, module_name, get_extension_mod):
- def transform(node):
- extension_module = get_extension_mod()
- for name, objs in extension_module.locals.items():
- node.locals[name] = objs
- for obj in objs:
- if obj.parent is extension_module:
- obj.parent = node
- manager.register_transform(Module, transform, lambda n: n.name == module_name)
|