I want to use a function from another module as a decorator, but I need it to manipulate the current module's global namespace.
For example, I want to be able to go from this:
class SomeClass:
pass
root = SomeClass
to this:
from othermodule import decorator
@decorator
class Someclass:
pass
Any ideas?
This is a bit hacky, but try this in othermodule.py
:
def decorator(cls):
mod = __import__(cls.__module__)
mod.root = cls