__init__.py 704 B

12345678910111213141516171819202122232425262728293031323334
  1. from astroid import MANAGER
  2. from astroid.builder import AstroidBuilder
  3. from astroid import nodes
  4. def register(_):
  5. # this method is expected by pylint for plugins, however we don't
  6. # want to register any checkers
  7. pass
  8. MODULE_TRANSFORMS = {}
  9. def transform(module):
  10. try:
  11. tr = MODULE_TRANSFORMS[module.name]
  12. except KeyError:
  13. pass
  14. else:
  15. tr(module)
  16. MANAGER.register_transform(nodes.Module, transform)
  17. def celery_transform(module):
  18. fake = AstroidBuilder(MANAGER).string_build('''
  19. class task_dummy(object):
  20. def __call__(self):
  21. pass
  22. ''')
  23. module.locals['task'] = fake.locals['task_dummy']
  24. MODULE_TRANSFORMS['celery'] = celery_transform